如何关闭鼠标滚轮的被动事件监听器

时间:2019-04-03 19:50:44

标签: javascript

我创建了一个网站,该网站将更改鼠标滚动显示的图像。一直运行到今天早上在我的本地计算机上,但突然停止了运行。当我检查开发者控制台时,收到一条错误消息,指出“ [Intervention]由于目标被视为被动,因此无法阻止被动事件侦听器内的Default。请参见https://www.chromestatus.com/features/6662647093133312

我已经阅读了提供的url上的信息,但仍然不明白如何关闭此功能。在我的代码中,我有以下内容:

var changeImage = function changeImage(event) {
    event.preventDefault();
    if (brochure.waitForDelay === false) {
        window.onwheel = function () {
            return false;
        };
        brochure.waitForDelay = true;
        if (event.deltaY < 0) {
            scrollUp();
        } else {
            scrollDown();
        }
        setTimeout(function () {
            brochure.waitForDelay = false;
            window.onwheel = function () {
                return true;
            };
        }, 1250);
    } else {
        return;
    }
};
var determineScrollDirection = function determineScrollDirection() {
    document.addEventListener('wheel', changeImage, { passive: false });
};

在defineScrollDirection中,我将被动对象设置为false,并尝试在changeImage函数中调用preventDefault,但仍然收到相同的错误消息。

1 个答案:

答案 0 :(得分:0)

我能够通过删除以下行来解决此问题:

 window.onwheel = function () {
        return false;
    };
相关问题