你好,游客 登录 注册 搜索
背景:
阅读新闻

网页漂浮窗口代码

[日期:2015-03-01] 来源:  作者: [字体: ]

漂浮窗口代码

<div id="ad" style="position:absolute"><a href=http://www.sunsprite.net target="_blank"><img src="img01.gif" border="0"></a></div>

<script>

var x = 50,y = 60

var xin = true, yin = true

var step = 1

var delay = 10

var obj=document.getElementById("ad")

function floatAD() {

var L=T=0

var R= document.body.clientWidth-obj.offsetWidth

var B = document.body.clientHeight-obj.offsetHeight

obj.style.left = x + document.body.scrollLeft

obj.style.top = y + document.body.scrollTop

x = x + step*(xin?1:-1)

if (x < L) { xin = true; x = L}

if (x > R){ xin = false; x = R}

y = y + step*(yin?1:-1)

if (y < T) { yin = true; y = T }

if (y > B) { yin = false; y = B }

}

var itl= setInterval("floatAD()", delay)

obj.onmouseover=function(){clearInterval(itl)}

obj.onmouseout=function(){itl=setInterval("floatAD()", delay)}

</script>

 

代码分析: <div id="ad" style="position:absolute"><a href=http://www.sunsprite.net target="_blank"><img src="img01.gif" border="0"></a></div>

<script>

var x = 50,y = 60 //浮动层的初始位置,分别对应层的初始X坐标和Y坐标

var xin = true, yin = true //判断层的X坐标和Y坐标是否在在控制范围之内,xin为真是层向右移动,否则向左;yin为真是层向下移动,否则向上

var step = 1 //层移动的步长,值越大移动速度越快

var delay = 10 //层移动的时间间隔,单位为毫秒,值越小移动速度越快

var obj=document.getElementById("ad") //捕获id为ad的层作为漂浮目标

function floatAD() {

var L=T=0 //层移动范围的左边界(L)和上边界(T)坐标

var R= document.body.clientWidth-obj.offsetWidth //层移动的右边界

var B = document.body.clientHeight-obj.offsetHeight //层移动的下边界

obj.style.left = x + document.body.scrollLeft //更新层的X坐标,实现X轴方向上的运动;document.body.scrollLeft为文档区域的滚动条向右拉的距离,以保证在滚动条右拉时层仍在可见范围内

obj.style.top = y + document.body.scrollTop //更新层的Y坐标,实现Y轴方向上的运动;document.body.scrollTop为文档区域的滚动条向下拉的距离,以保证在滚动条下拉时层仍在可见范围内

x = x + step*(xin?1:-1) //通过判断层的范围决定层在X轴上的运动方向

if (x < L) { xin = true; x = L} //层超出左边界时的处理

if (x > R){ xin = false; x = R} //层超出右边界时的处理

y = y + step*(yin?1:-1) //通过判断层的范围决定层在Y轴上的运动方向

if (y < T) { yin = true; y = T } //层超出上边界时的处理

if (y > B) { yin = false; y = B } //层超出下边界时的处理

}

var itl= setInterval("floatAD()", delay) //每delay秒执行一次floatAD函数

obj.onmouseover=function(){clearInterval(itl)} //层在鼠标移上时清除上面的间隔事件,实现层在的鼠标移上时停止运动的效果

obj.onmouseout=function(){itl=setInterval("floatAD()", delay)} //层在鼠标移开时开始间隔事件,实现层在的鼠标移开时继续运动的效果

</script>

网页漂浮窗口代码

 

漂浮窗口代码

 

<SCRIPT>

var imagepath="images/flot3.gif"

var imagewidth=135 //这两行写图片的大小

var imageheight=100

var speed=2;

var imageclick="index0.htm" //这里写点击图片连接到的地址

var hideafter=0

var isie=0;

if(window.navigator.appName=="Microsoft Internet Explorer"&&window.navigator.appVersion.substring(window.navigator.appVersion.indexOf("MSIE")+5,window.navigator.appVersion.indexOf("MSIE")+8)>=5.5) {

isie=1;

}

else {

isie=0;

}

if(isie){

var preloadit=new Image()

preloadit.src=imagepath

}

function pop() {

if(isie) {

x=x+dx;y=y+dy;

oPopup.show(x, y, imagewidth, imageheight);

if(x+imagewidth+5>screen.width) dx=-dx;

if(y+imageheight+5>screen.height) dy=-dy;

if(x<0) dx=-dx;

if(y<0) dy=-dy;

startani=setTimeout("pop();",50);

}

}

function dismisspopup(){

clearTimeout(startani)

oPopup.hide()

}

function dowhat(){

if (imageclick=="dismiss")

dismisspopup()

else

window.open(imageclick);

}

if(isie) {

var x=0,y=0,dx=speed,dy=speed;

var oPopup = window.createPopup();

var oPopupBody = oPopup.document.body;

oPopupBody.style.cursor="hand"

oPopupBody.innerHTML = '<IMG SRC="'+preloadit.src+'">';

oPopup.document.body.onmouseover=new Function("clearTimeout(startani)")

oPopup.document.body.onmouseout=pop

oPopup.document.body.onclick=dowhat

pop();

if (hideafter>0)

setTimeout("dismisspopup()",hideafter*1000)

}

</SCRIPT>

收藏 推荐 打印 | 录入:admin | 阅读:
相关新闻      
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
热门评论