网页漂浮广告代码的问题

rachardking 2010-04-12 04:29:27
var xPos = 300;
var yPos = 200;
var step = 1;
var delay = 30;
var height = 0;
var Hoffset = 0;
var Woffset = 0;
var yon = 0;
var xon = 0;
var pause = true;
var interval;
img1.style.top = yPos;
function changePos()
{
width = document.body.clientWidth;
height = document.body.clientHeight;
Hoffset = img1.offsetHeight;
Woffset = img1.offsetWidth;
img1.style.left = xPos + document.body.scrollLeft;
img1.style.top = yPos + document.body.scrollTop;
if (yon)
{yPos = yPos + step;}
else
{yPos = yPos - step;}
if (yPos < 0)
{yon = 1;yPos = 0;}
if (yPos >= (height - Hoffset))
{yon = 0;yPos = (height - Hoffset);}
if (xon)
{xPos = xPos + step;}
else
{xPos = xPos - step;}
if (xPos < 0)
{xon = 1;xPos = 0;}
if (xPos >= (width - Woffset))
{xon = 0;xPos = (width - Woffset); }
}

function start()
{
img1.visibility = "visible";
interval = setInterval('changePos()', delay);
}
function pause_resume()
{
if(pause)
{
clearInterval(interval);
pause = false;}
else
{
interval = setInterval('changePos()',delay);
pause = true;
}
}
start();

谁帮忙解释一下
红色字体部分
...全文
75 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
reedseutozte 2010-04-13
  • 打赏
  • 举报
回复
当yon=0的时候表达式yon返回false,所以一开始是提高img1的top属性,让img1上升,否则当yon不等于0的时候就减少img的top属性,也就是让img1下降
如果ypos小于0,表示图片已经到了底部,所以设置ytop=0,让程序使img1上升
如果ypos高出最大高度,表示图片已经到了顶部,所以设置ytop=1,让程序使img1下降
xon则是对于横向范围的判断

liufeng_1988 2010-04-13
  • 打赏
  • 举报
回复
用jquery吧。很快就弄好了
浮动广告代码 右下角漂浮代码 [removed] initAd();//载入页面后,调用函数initAd() [removed] [removed] <!-- function initAd() { document.all.AdLayer.style.posTop = -200; //设置onLoad事件激发以后,广告层相对于固定后的y方向位置 document.all.AdLayer.style.visibility = 'visible'//设置层为可见 MoveLayer('AdLayer');//调用函数MoveLayer() } function MoveLayer(layerName) { var x = 0;//浮动广告层固定于浏览器的x方向位置 var y = 300;//浮动广告层固定于浏览器的y方向位置 var diff = (document.body.scrollTop + y - document.all.AdLayer.style.posTop)*.40; var y = document.body.scrollTop + y - diff; eval("document.all." + layerName + ".style.posTop = y"); eval("document.all." + layerName + ".style.posright = x");//移动广告层 setTimeout("MoveLayer('AdLayer');", 0);//设置20毫秒后再调用函数MoveLayer() } //--> [removed] <!--下面为一个ID为AdLayer的层(如ID名不为AdLayer, 上面MoveLayer()内的AdLayer也要作相应修改),包括一张带链接的图片--> 本人文学网站开通,欢迎大家赏脸光顾 漂浮广告代码

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧