请问在javascript中如何判断滚动事件的方向呢?当产生Scroll类型的Event时,怎样判断是横向滚动条的事件还是纵向滚动条的时间呢?谢谢!

解决方案 »

  1.   

    保存前1秒前的scrollTop和scrollLeft,然后和现在的这两个值比较就知道了
      

  2.   

    看改变的是scrollLeft
    还是scrollTop
      

  3.   


     <BODY onscroll="fun()">
     <div id="log" style="width:1500; height:1000"></div>
      <SCRIPT LANGUAGE="JavaScript">
      <!--
    var sTop = 0;
    var sLeft = 0;
    function fun(){
    if(document.body.scrollTop != sTop) {
    document.getElementById("log").innerHTML += "<BR>纵向滚";
    sTop = document.body.scrollTop;
    }
    if(document.body.scrollLeft != sLeft) {
    document.getElementById("log").innerHTML += "<BR>横向滚";
    sLeft = document.body.scrollLeft;
    }
    }
      //-->
      </SCRIPT>
     </BODY>
      

  4.   

    我现在也是使用几位所说的办法,但是觉得有点繁琐。想问一下,Scroll类型的Event对象,有没有什么特殊的属性,可以表明滚动的方向呢?谢谢!