<script language=javascript>
var objleft;
function chpos()
{
    var obj=document.getElementById('div1');         //div1根据div的id不同自行修改
    obj.style.top=parseInt(obj.style.top) + 5 + 'px';   //垂直位移增量5    if (parseInt(obj.style.top)+parseInt(obj.style.height)>document.body.scrollTop+document.body.clientHeight)
        {obj.style.top=document.body.scrollTop;}
    else if (parseInt(obj.style.top)<document.body.scrollTop)
        {obj.style.top=document.body.scrollTop;}    if (objleft==null) objleft=parseInt(obj.style.left);
    obj.style.left=objleft+Math.sin(parseInt(obj.style.top)/10)*10 + 'px';   //水平位移用正弦函数控制    setTimeout('chpos()',50);     //每隔多少毫秒移动一次
}
</script>
<div id="div1" style="position:absolute;left:200px;top:0px;width:100px;height:100px;overflow:hidden"><img onload="chpos();" src="c:\temp\pic\10.jpg" id="img1"></div>//left属性改成你想要的图片水平位置,width和height改成图片宽度
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>
<p>1111111111</p>(C)Copyright 2004    MJ PC Lab (大猫猫)

解决方案 »

  1.   

    document.body.scrollTop
    是不是默认的函数/方法。
      

  2.   

    呵呵,谢谢一楼的,但是这种方法好像不行耶~~不如我把我的代码贴出来你帮我看看怎么修改能让这个特效跟着滚动条走好么?~~<script language="JavaScript1.2"> var snowsrc="http://www.blogcn.com/user15/lmrf_xsb/upload/20048141842813725.gif" ; var no = 36; var ns4up = (document.layers) ? 1 : 0; var ie4up = (document.all) ? 1 : 0; var dx, xp, yp; var am, stx, sty; var i, doc_width = 1024, doc_height = 768; if (ns4up) { doc_width = self.innerWidth; doc_height = 6000; } else if (ie4up) { doc_width = document.body.clientWidth; doc_height = 6000; } dx = new Array(); xp = new Array(); yp = new Array(); am = new Array(); stx = new Array(); sty = new Array(); for (i = 0; i < no; ++ i) { dx[i] = 0; xp[i] = Math.random()*(doc_width-50); yp[i] = Math.random()*doc_height; am[i] = Math.random()*20; stx[i] = 0.02 + Math.random()/10; sty[i] = 0.7 + Math.random(); if (ns4up) { document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src="+snowsrc+" border=\"0\" name=\"snow2\"></layer>"); } else if (ie4up) { document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src="+snowsrc+" border=\"0\" name=\"snow4\"></div>"); } } function snowNS() { for (i = 0; i < no; ++ i) { yp[i] += sty[i]; if (yp[i] > doc_height-50) { xp[i] = Math.random()*(doc_width-am[i]-30); yp[i] = 0; stx[i] = 0.02 + Math.random()/10; sty[i] = 0.7 + Math.random(); doc_width = self.innerWidth; doc_height = 6000; } dx[i] += stx[i]; document.layers["dot"+i].top = yp[i]; document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]); } setTimeout("snowNS()", 10); } function snowIE() { for (i = 0; i <no; ++ i) { yp[i] += sty[i]; if (yp[i] > doc_height-50) { xp[i] = Math.random()*(doc_width-am[i]-30); yp[i] = 0; stx[i] = 0.02 + Math.random()/10; sty[i] = 0.7 + Math.random(); doc_width = document.body.clientWidth; doc_height = 6000; } dx[i] += stx[i]; document.all["dot"+i].style.pixelTop = yp[i]; document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]); } setTimeout("snowIE()", 10); } if (ns4up) { snowNS(); } else if (ie4up) { snowIE(); }</script>呵呵,这是从网上找的,所以乱了点~~