Javascript Google Maps API&非被动事件处理程序

时间:2017-12-13 17:53:11

标签: addeventlistener passive-event-listeners

最近Chrome开始发出以下警告:

  

[违规]为滚动屏蔽' touchmove'添加了非被动事件监听器。事件。考虑将事件处理程序标记为“被动'使页面更具响应性。见https://www.chromestatus.com/feature/5745543795965952

这些来自JavaScript Google Maps API代码。我可以在我自己的代码中将{passive:true}添加到a​​ddEventListener(),但是不知道如何在Googles库中禁止警告?

2 个答案:

答案 0 :(得分:0)

此时您无能为力。这是从 Google 自己的 API 代码生成的警告。只要你自己的事件监听器是被动的,我认为可以安全地忽略它。

答案 1 :(得分:0)

这对我有用。到这里https://stackoverflow.com/a/55388961/2233069

(function () {
    if (typeof EventTarget !== "undefined") {
        let func = EventTarget.prototype.addEventListener;
        EventTarget.prototype.addEventListener = function (type, fn, capture) {
            this.func = func;
            if(typeof capture !== "boolean"){
                capture = capture || {};
                capture.passive = false;
            }
            this.func(type, fn, capture);
        };
    };
}());