首页 > 解决方案 > 被动事件监听器

问题描述

function loadMenuBasedScript() {}
var getMenuDependentValues="";
window.addEventListener("DOMContentLoaded", function() {
  document.getElementById("selectMenu").onchange = function() {
    menuSelected = this.value;
    loadMenuBasedScript(menuSelected, getMenuDependentValues);
  };
}, false);
<body>
  <div>
    <select id="selectMenu">
      <option value="one">One</option>
      <option value="two">Two</option>
    </select>
  </div>
</body>

如果我单击菜单图标,chrome 会在控制台中显示警告:

[违规] 向阻止滚动的“鼠标滚轮”事件添加了非被动事件侦听器。考虑将事件处理程序标记为“被动”以使页面更具响应性。见https://www.chromestatus.com/feature/5745543795965952

如何用简单的htmland克服js?我需要value基于选择的菜单。

标签: javascripthtml

解决方案


这只是 Chrome 的一个问题。即使只有<select></select>和没有事件侦听器也会发生这种情况。每当发生滚动阻止事件时,Chrome 都会自动记录。使用 Chrome 的 DevTools,我检查了选择框上没有鼠标滚轮侦听器,它仍然发生。

我建议在控制台中关闭“详细”。


推荐阅读