這篇文章主要介紹了使用jquery scroll()方法區分浏覽器橫向和縱向滾動條的方法,需要的朋友可以參考下
jquery在scroll()事件裡面,我想判斷當前滾動條橫向還縱向; 我開始用全局變量記錄scrollTop的值來判斷的,如果前後值沒有變就是橫向滾動了, 但是頁面裡有多個滾動條,就要多個全局變量來控制,該怎麼判斷呢? scroll jquery 區分橫向縱向滾動條 解決方法: each一次設置選擇器選中對象的scrollLeft/scrollTop就行了,然後綁定scroll事件,觸發的時候獲取scrollLeft/scrollTop和初始化的scrollLeft/scrollTop對比判斷是橫向還是縱向,同時更新對象存儲的scrollLeft/scrollTop 代碼如下: <style> .c{height:120px;width:120px;overflow:auto;border:solid 1px black;margin-bottom:5px;} </style> <div class="c">111111111111111111<br>1111111111111111111<br>1111111111111111111<br>1111111111111111111 <br>1111111111111111111<br>1111111111111111111<br>1111111111111111111</div> <div class="c">111111111111111111<br>1111111111111111111<br>1111111111111111111<br>1111111111111111111 <br>1111111111111111111<br>1111111111111111111<br>1111111111111111111</div> <div class="c">111111111111111111<br>1111111111111111111<br>1111111111111111111<br>1111111111111111111 <br>1111111111111111111<br>1111111111111111111<br>1111111111111111111</div> <div class="c">111111111111111111<br>1111111111111111111<br>1111111111111111111<br>1111111111111111111 <br>1111111111111111111<br>1111111111111111111<br>1111111111111111111</div> <script src="/js/jquery.js"></script> <script> $('div').each(function(){$(this).data('slt',{sl:this.scrollLeft,st:this.scrollTop});}).scroll(function(){ var sl=this.scrollLeft,st=this.scrollTop,d=$(this).data('slt'); if(sl!=d.sl)alert('橫向滾動'); if(st!=d.st)alert('縱向滾動'); $(this).data('slt',{sl:sl,st:st});/// }) </script>