1

ページ全体のイベントをキャッチしたいのonMouseWheelですが (カスタム スクロールを行っているコンテキストでは)、それを処理するページ上の他のすべても停止する必要があります。これはどのように行うことができますか?

前もって感謝します。

4

2 に答える 2

2

あなたは電話するべきです

event.preventDefault();

イベント処理後。

このような:

window.addEventListener("onMouseWheel", function(event) {
    // process the event for custom scrolling

    event.preventDefault();
    event.stopPropagation();
}, true);
于 2012-12-29T15:31:31.233 に答える
0

次のように jquery で実行できます。

$(function(){
    $('*:not(body)').on('mousewheel',function(e){
        e.preventDefault();
        e.stopPropagation();
    });
});

純粋な JavaScript を使用した代替ソリューション:

var ele = document.querySelectorAll('*:not(body)');
ele.forEach(function(i){
    ele[i].addEventListener('mousewheel',function(e){
        e.preventDefault();
        e.stopPropagation();
    },false);
});
于 2012-12-29T15:35:41.900 に答える