javascript 滑鼠滾輪事件例子

來源:互聯網
上載者:User

滾輪事件的相容性差異有些不拘一格,不是以往的IE8-派和其他派,而是FireFox派和其他派。

包括IE6在內的瀏覽器是使用onmousewheel,而FireFox瀏覽器一個人使用DOMMouseScroll. 經自己測試,即使現在FireFox 19下,也是不識onmousewheel。

 代碼如下 複製代碼

//非ie
document.body.onmousewheel = function(event) {
    event = event || window.event;
    console.dir(event);
};
//firefox
document.body.addEventListener("DOMMouseScroll", function(event) {
    console.dir(event);
});

IE和其他的主流瀏覽器可以使用傳統的事件綁定模型。但不要使用IE專有的attachEvent方法,其他主流瀏覽器並不識別微軟的這個方法。下面先測試一下。

-120

 代碼如下 複製代碼
<script type="text/javascript">
// <![CDATA[
var mouseWheel = document.getElementById('mouseWheel');
 
if (mouseWheel.addEventListener) {
 
mouseWheel.addEventListener('DOMMouseScroll', function(event) {
 
event.target.innerHTML = event.detail;
event.stopPropagation();
event.preventDefault();
 
}, false);
}
mouseWheel.onmousewheel = function(event) {
 
event = event || window.event;
mouseWheel.innerHTML = event.wheelDelta;
event.returnValue = false;
 
}
// ]]>
</script>

測試之後得到如下的結論。
Firefox
滑鼠滾輪向上滾動是-3,向下滾動是3

IE
滑鼠滾輪向上滾動是120,向下滾動是-120

Safari
滑鼠滾輪向上滾動是360,向下滾動是-360

Opera
滑鼠滾輪向上滾動是120,向下滾動是-120

Chrome
滑鼠滾輪向上滾動是120,向下滾動是-120

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.