把script的代码放到HTML的最后面.
因为document.getElementById('floatIMG');的时候,
floatIMG还没有被加载.
因此访问不到.

解决方案 »

  1.   


    如这样就行了..
    <!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> 
        <title>无标题页 </title> 
        
    </head> 
    <body> 
    <textarea rows="500" cols="500" id="textarea1" name="textarea1"> 
    以便浏览器有滚动条 
    </textarea> 
    <div id="floatIMG" style="position:absolute; visibility:hidden; left:0; top:0"> 
    <a href="#"> <img src="image/8.jpg" alt="henry" style="width: 104px; height: 155px" /> </a> 
    </div> 
    <script language="javascript" type="text/javascript"> 
        var dirX=1,dirY=1; 
        var pX=0; 
        var pY=0;  
        var a=document.getElementById("floatIMG"); 
          alert(a);
        a.style.top=0;//缺少对像 
        a.style.left=0; 
        a.style.visibility="visible"; 
        window.setInterval("mo()",100); 
        function mo() 
        { 
        pX+=2*dirX; 
        pY+=2*dirY; 
        document.getElementById('floatIMG').style.top=pY; 
        document.getElementById('floatIMG').style.left=pX; 
        if(pX <=0||pX+floatIMG.offsetWidth>=document.body.clientWidth) 
        { 
        dirX=-dirX; 
        } 
            if(pY <=0||pY+floatIMG.offsetHeight>=document.body.clientHeight) 
        { 
        dirY=-dirY; 
        } 
        } 
        </script> 
    </body> 
    </html> 
      

  2.   

    恩~还有个问题~好像没执行    if(pX <=0||pX+floatIMG.offsetWidth>=document.body.clientWidth) 
        { 
        dirX=-dirX; 
        } 
            if(pY <=0||pY+floatIMG.offsetHeight>=document.body.clientHeight) 
        { 
        dirY=-dirY; 
        } 
      

  3.   

    不好意思~~现在就一个问题了`如何计它随滚动条滚动了
    我改成还是不行    document.getElementById('floatIMG').style.top=pY+document.body.scrollTop;   
        document.getElementById('floatIMG').style.left=pX+document.body.scrollLeft;
    各位应该如何呢?
      

  4.   

    function mo()
    {
        pX+=2*dirX;
        pY+=2*dirY;    if( pX < document.documentElement.scrollLeft ){
          pX = document.documentElement.scrollLeft ;
        }    if( pY < document.documentElement.scrollTop ){
          pY = document.documentElement.scrollTop ;
        }
        
        document.getElementById('floatIMG').style.top=pY;
        document.getElementById('floatIMG').style.left=pX;
        
        if(pX <=0||pX+floatIMG.offsetWidth>=document.body.clientWidth)
        {
    dirX=-dirX;
        }
        if(pY <=0||pY+floatIMG.offsetHeight>=document.body.clientHeight)
        {
        dirY=-dirY;
        }
    }
      

  5.   

    凡是页面顶部声明为:
    DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd">
    的情况下,document.body要改为document.documentElement