本人想实现一个左侧导航菜单随页面浮动显示,就像某些网站上两侧浮动的广告的效果。
写了一部分代码,但是在火狐浏览器下不好用。请高手帮助解答一下代码如下:
<script language="javascript" type="text/javascript">
<!--
/////////////////////////////////////////////////////
var divAdInitTop;function moveDivAd()
{
   
  if(document.documentElement.scrollTop != 0)
      document.getElementById("divAd").style.pixelTop = divAdInitTop + document.documentElement.scrollTop; else
      document.getElementById("divAd").style.pixelTop = divAdInitTop + document.body.scrollTop;  
}function initDivAd()
{
   divAdInitTop = document.getElementById("divAd").style.pixelTop;
   window.onscroll = moveDivAd;
   alert(moveDivAd);
}
/////////////////////////////////////////////////////
function closeDivAd()
{
 document.getElementById("divAd").style.display = "none"; window.onscroll = null; //关闭事件源
}
/////////////////////////////////////////////////////
//此方法是为了实现效果加的一个使页面上下变长出现滚动条的方法
printLine();
function printLine()
{
 for(i=1; i<=200; i++)
  document.write(i+"<br>");
}
/////////////////////////////////////////////////////
-->
</script>

解决方案 »

  1.   

     <div style="position:fixed;border:solid 1px black;width:100px;height:100px;"></div>
      

  2.   

    if(document.documentElement.scrollTop != 0) 
          document.getElementById("divAd").style.top = divAdInitTop + document.documentElement.scrollTop+"px"; 
    else 
          document.getElementById("divAd").style.top = divAdInitTop + document.body.scrollTop+"px"; 
      

  3.   

    呵呵,我写了一个有这个功能的插件,插件详解,里面的第五个功能就可以实现你说的,这个需要CSS配合使用#qq{
    width:170px;
    height:200px;
    position:fixed; //必须参数
    _position:absolute;  //必须参数,for IE6
    top:150px; //离浏览器上面的距离
    left:10px; //离左边的距离
    border:1px solid #bcd8ea;
    line-height:30px;
    }
    var Example=new Javascript100();
    Example.floatDivId="qq"; //浮动层的ID值
    Example.direct="left";  //浮动层的方向,left为左侧,right为右侧
    //Example.hidenPx=100; 可选参数,该层的缩进像素(移动到该层边缘,整个层弹出),这个需要和CSS配合起来使用
    Example.floatDiv();  //使用这个功能自己把参数改改吧,很简单就可以实现了