小疑点,你懂得!

小问题,你懂得!~~JScript code!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://

小问题,你懂得!~~

JScript code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>    <head>        <title> New Document </title>        <meta name="Generator" content="EditPlus">    <meta name="Author" content="">    <meta name="Keywords" content="">    <meta name="Description" content="">        <script type="text/JavaScript" language="JavaScript">        var x=50, y=60;        var xin= true,  yin = true;        var step=1;        var obj=document.getElementById("ad");        function floatAd(){            var L=T=0;            var R=document.body.clientWidth-110;            var B=document.body.clientHeight-110;            obj.style.left=x+document.body.scrollLeft;            obj.style.top=y+document.body.scrollTop;            x=x+step*(xin?1:-1);            if(x>R)            {                xin=false;                x=R;            }            if(x<L)            {                xin=true;                X=L;            }                        y=y+step*(yin?1:-1);            if(y>B)            {                yin=false;                y=R;            }            if(y<T)            {                yin=true;                y=T;                }        }                var it1=setInterval("floatAd()",10);        obj.onmouseover=function(){clearInterval(it1)};        obj.onmouseout=function(){it1=setInterval("floatAd()",10)};    </script>    </head>    <body>        <div id="ad" style="position:absolute;"><a href="http:\\www.baidu.com" target="new"><img src="ad.jpg" /></a></div>    </body></html>


chrome跟firebug在 obj.style.left=x+document.body.scrollLeft; 跟 obj.onmouseover=function(){clearInterval(it1)};报错了。。。。。。可是?why????不理解怎么错了,要怎么改~~~~~~~~谢谢拉



[解决办法]
JS代码放到body标签中(id为ad的div标签后面),下面两行代码需要加上单位px:
JScript code
            obj.style.left=x+document.body.scrollLeft + 'px';            obj.style.top=y+document.body.scrollTop + 'px';
[解决办法]
代码是从上往下解析执行的,在走你这段JS代码的时候,下面的dom节点还没有生成,当然会出错。
在body标签上增加onload事件,把你一整段JS代码,放在一个自定义的function中。。

<body onload="loadInit()">