`
stone_tms
  • 浏览: 17882 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

JS 全站漂浮

 
阅读更多

全站漂浮的js代码:

 

//公共脚本文件 main.js

function addEvent(obj,evtType,func,cap){

cap=cap||false;

if(obj.addEventListener){

obj.addEventListener(evtType,func,cap);

return true;

}else if(obj.attachEvent){

if(cap){

obj.setCapture();

return true;

}else{

return obj.attachEvent("on" + evtType,func);

}

}else{

return false;

}

}

function getPageScroll(){

var xScroll,yScroll;

if (self.pageXOffset) {

xScroll = self.pageXOffset;

} else if (document.documentElement && document.documentElement.scrollLeft){

xScroll = document.documentElement.scrollLeft;

} else if (document.body) {

xScroll = document.body.scrollLeft;

}

if (self.pageYOffset) {

yScroll = self.pageYOffset;

} else if (document.documentElement && document.documentElement.scrollTop){

yScroll = document.documentElement.scrollTop;

} else if (document.body) {

yScroll = document.body.scrollTop;

}

arrayPageScroll = new Array(xScroll,yScroll);

return arrayPageScroll;

}

function GetPageSize(){

var xScroll, yScroll;

if (window.innerHeight && window.scrollMaxY) { 

xScroll = document.body.scrollWidth;

yScroll = window.innerHeight + window.scrollMaxY;

} else if (document.body.scrollHeight > document.body.offsetHeight){

xScroll = document.body.scrollWidth;

yScroll = document.body.scrollHeight;

} else {

xScroll = document.body.offsetWidth;

yScroll = document.body.offsetHeight;

}

var windowWidth, windowHeight;

if (self.innerHeight) {

windowWidth = self.innerWidth;

windowHeight = self.innerHeight;

} else if (document.documentElement && document.documentElement.clientHeight) {

windowWidth = document.documentElement.clientWidth;

windowHeight = document.documentElement.clientHeight;

} else if (document.body) {

windowWidth = document.body.clientWidth;

windowHeight = document.body.clientHeight;

} 

if(yScroll < windowHeight){

pageHeight = windowHeight;

} else { 

pageHeight = yScroll;

}

if(xScroll < windowWidth){ 

pageWidth = windowWidth;

} else {

pageWidth = xScroll;

}

arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 

return arrayPageSize;

}

//广告脚本文件 AdMove.js

/*

例子

<div id="Div2">

***** content ******

</div>

var ad=new AdMove("Div2");

ad.Run();

*/

////////////////////////////////////////////////////////

var AdMoveConfig=new Object();

AdMoveConfig.IsInitialized=false;

AdMoveConfig.ScrollX=0;

AdMoveConfig.ScrollY=0;

AdMoveConfig.MoveWidth=0;

AdMoveConfig.MoveHeight=0;

AdMoveConfig.Resize=function(){

var winsize=GetPageSize();

AdMoveConfig.MoveWidth=winsize[2];

AdMoveConfig.MoveHeight=winsize[3];

AdMoveConfig.Scroll();

}

AdMoveConfig.Scroll=function(){

var winscroll=getPageScroll();

AdMoveConfig.ScrollX=winscroll[0];

AdMoveConfig.ScrollY=winscroll[1];

}

addEvent(window,"resize",AdMoveConfig.Resize);

addEvent(window,"scroll",AdMoveConfig.Scroll);

function AdMove(id){

if(!AdMoveConfig.IsInitialized){

AdMoveConfig.Resize();

AdMoveConfig.IsInitialized=true;

}

var obj=document.getElementById(id);

obj.style.position="absolute";

var W=AdMoveConfig.MoveWidth-obj.offsetWidth;

var H=AdMoveConfig.MoveHeight-obj.offsetHeight;

var x = W*Math.random(),y = H*Math.random();

var rad=(Math.random()+1)*Math.PI/6;

var kx=Math.sin(rad),ky=Math.cos(rad);

var dirx = (Math.random()<0.5?1:-1), diry = (Math.random()<0.5?1:-1);

var step = 1;

var interval;

this.SetLocation=function(vx,vy){x=vx;y=vy;}

this.SetDirection=function(vx,vy){dirx=vx;diry=vy;}

obj.CustomMethod=function(){

obj.style.left = (x + AdMoveConfig.ScrollX) + "px";

obj.style.top = (y + AdMoveConfig.ScrollY) + "px";

rad=(Math.random()+1)*Math.PI/6;

W=AdMoveConfig.MoveWidth-obj.offsetWidth;

H=AdMoveConfig.MoveHeight-obj.offsetHeight;

x = x + step*kx*dirx;

if (x < 0){dirx = 1;x = 0;kx=Math.sin(rad);ky=Math.cos(rad);} 

if (x > W){dirx = -1;x = W;kx=Math.sin(rad);ky=Math.cos(rad);}

y = y + step*ky*diry;

if (y < 0){diry = 1;y = 0;kx=Math.sin(rad);ky=Math.cos(rad);} 

if (y > H){diry = -1;y = H;kx=Math.sin(rad);ky=Math.cos(rad);}

}

this.Run=function(){

var delay = 10;

interval=setInterval(obj.CustomMethod,delay);

obj.onmouseover=function(){clearInterval(interval);}

obj.onmouseout=function(){interval=setInterval(obj.CustomMethod, delay);}

}

}

 

 

html中的代码:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="js/piaofu.js"></script>
</head>

<body>
<div id="img1" style="width: 200px; height: 100px; z-index: 100000;">
	<img src="images/piaofu.jpg" usemap="#piaofu"/>
	<map name="piaofu">
	<area shape="rect" coords="185,0,199,15" href="" onclick="return closePiaofu();" />
	<area shape="rect" coords="110,75,199,99" href="http://10.0.0.37/jcbcard.php" />
	</map>
</div>
<script type="text/javascript">
var ad1=new AdMove("img1",true);
ad1.Run();
</script>
</body>
</html>
分享到:
评论

相关推荐

    程序天下:JavaScript实例自学手册

    19.16 防止JavaScript文件被其他站直接引用 19.17 检查机器是否安装Word 19.18 打印当前页 19.19 打印预览 19.20 隐藏不想打印的页面内容 19.21 使用ExecWB直接打印 19.22 动态绑定XML文件 19.23 Kill Excel的进程 ...

    飞翔非主流伪静态缓存开源版 v2.0.rar

    ·广告位请根据页面提示进行更改,全站弹窗或漂浮由“js/tan.js”控制,全站统计由“js/count.js”控制; ·首页友情连接可以打开js/link.html进行修改,默认罗列出两排,使用一个链接一行。 飞翔非主流伪静态...

    《程序天下:JavaScript实例自学手册》光盘源码

    19.16 防止JavaScript文件被其他站直接引用 19.17 检查机器是否安装Word 19.18 打印当前页 19.19 打印预览 19.20 隐藏不想打印的页面内容 19.21 使用ExecWB直接打印 19.22 动态绑定XML文件 19.23 Kill Excel的进程 ...

    飞翔网络漫画小偷伪静态缓存开源版 v1.2

    5.广告位请根据页面提示进行更改,全站弹窗或漂浮由js/tan.js控制。飞翔网络漫画小偷伪静态缓存版 v1.2 (开源) (更新日期:2011-09-13)更新说明:1.修正了首页幻灯片错误。2.修正了首页连接的错误。

    飞翔网络漫画小偷伪静态缓存开源版 v1.2.rar

    5.广告位请根据页面提示进行更改,全站弹窗或漂浮由js/tan.js控制。 飞翔网络漫画小偷伪静态缓存版 v1.2 (开源) (更新日期:2011-09-13)更新说明: 1.修正了首页幻灯片错误。 2.修正了首页连接的错误。

    XYCMS企业建站系统简洁版.rar

    在线搜索功能:输入关键字,可以对全站信息进行关键字搜索,以列表形式显示。 基本设置:后台可上传LOGO,修改尺寸,修改联系方式,网站是否开放。 管 理 员:可以添加多个管理员数目。 导航设置:可以管理,修改...

    牛叉广告管理优化大师(NiuXams) V1.10 正式版.zip

    存储为js文件,一次创建入库,全站引用。 广告位管理 ·系统化管理网站上的广告位js文件。化繁为简,便捷管理网站广告位,控制广告投放。 智能投放、收益优化 ·多种智能方式投放广告,实现广告精准投放,提升每...

    飞翔漫画小偷伪静态缓存版 1.0

    飞翔漫画小偷伪静态缓存版,网站界面简洁美观,在线漫画资源还比较丰富,还提供动漫新闻等特色栏目,更新速度也比较快,可满足大部分喜欢看漫画的...4、广告位请根据页面提示进行更改,全站弹窗或漂浮由js/tan.js控制。

    大型房产门户网站管理系统

    10、业主社区|论坛: 说明:采用Dvbbs Sql 版,集成淘特CMS及Oblog会员通行证,会员一处注册就可实现全站登录。 11、房产博客: 说明:采用Oblog,集成淘特CMS和动网论坛通行证功能,会员一个注册全站可以登录。 ...

    房产CMS系统 v5.6

    10、业主社区|论坛: 说明:采用Dvbbs Sql 版,集成淘特CMS及Oblog会员通行证,会员一处注册就可实现全站登录。 11、房产博客: 说明:采用Oblog,集成淘特CMS和动网论坛通行证功能,会员一个注册全站可以登录。 ...

    淘特房产CMS系统 v5.5 生成HTML静态版.rar

    10、业主社区|论坛: 说明:采用Dvbbs Sql 版,集成淘特CMS及Oblog会员通行证,会员一处注册就可实现全站登录。 11、房产博客: 说明:采用Oblog,集成淘特CMS和动网论坛通行证功能,会员一个注册全站可以登录。 10...

    大型房产门户网站管理系统V7.1

    10、业主社区|论坛: 说明:采用Dvbbs Sql 版,集成淘特CMS及Oblog会员通行证,会员一处注册就可实现全站登录。 11、房产博客: 说明:采用Oblog,集成淘特CMS和动网论坛通行证功能,会员一个注册全站可以登录。 ...

    搞笑版大学录取通知书.rar

    10、业主社区|论坛: 说明:采用Dvbbs Sql 版,集成淘特CMS及Oblog会员通行证,会员一处注册就可实现全站登录。 11、房产博客: 说明:采用Oblog,集成淘特CMS和动网论坛通行证功能,会员一个注册全站可以登录。 ...

    工作易高端人才招聘系统100%商业最新版(带源码)

    3.SEO效果好,全站由Css+Div构成,自带sitemap,更好的支持搜索引擎的收录和排名。 后台用户名:admin 密码:admin此次的升级修改了100310里没有视频播放器的问题和查看个人、企业资料时,联系方式有错的细节。 该...

    微尔网站管理系统(VierCms) 1.75 Build 100713.rar

     能对首页、文章页、大小分类页、专题、下载内容页、视频内容页、JS文件生成静态页面 3 支持以专题的方式组织文章 4 支持RSS2.0 5 支持多模板功能及非常灵活的模板定制  微尔系统的新的模板架构基于先进的...

    ASP工作易人才招聘系统

    3.SEO效果好,全站由Css+Div构成,自带sitemap,更好的支持搜索引擎的收录和排名。 后台用户名:admin 密码:admin此次的升级修改了100310里没有视频播放器的问题和查看个人、企业资料时,联系方式有错的细节。 该...

    SiteServer v3.4.4 for .net1.1.rar

    系统安装时能够选择使用的数据库类型(SQLSERVER、ORACLE、ACCESS)及系统版本(标准版、专业版、全功能版)。 SiteServer 系列产品中任何一款产品(CMS、BBS、Ask、Space)均可单独安装,单独运行。 新增及完善...

Global site tag (gtag.js) - Google Analytics