我提交一个...
当前行为:
向阻止滚动的“touchmove”事件添加了非被动事件侦听器。 考虑将事件处理程序标记为“被动”以使页面更具响应性。
预期/新行为:
被动事件侦听器是 DOM 规范中的一项新功能,它使开发人员能够通过消除滚动来阻止触摸和滚轮事件侦听器的需要来选择加入以提高滚动性能。 开发人员可以使用 {passive: true} 注释触摸和滚轮侦听器,以表明他们永远不会调用 preventDefault。 此功能在 Chrome 51、Firefox 49 中提供,并在 WebKit 中登陆。 有关完整的官方解释,请在此处阅读更多信息。
使用说明最小限度地再现问题:
角度版本: 1.6.4
浏览器: Chrome 59
你好,谢谢你的建议。 这种行为在规范中(https://dom.spec.whatwg.org/#dictdef-eventlisteneroptions),但在 IE / Edge 和 Safari 中缺乏支持。 我假设我们可以在这里做一个例外,因为不支持它的浏览器会忽略选项对象,对吗?
你说的对!
该对象可能会被忽略,但对于不支持选项对象的浏览器,它将解析为一个真值,这会将useCapture
设置为 true。
基于此评论https://github.com/angular/angular.js/pull/16026#issuecomment -305763416,这是可预见的未来的解决方案
最有用的评论
你好,谢谢你的建议。 这种行为在规范中(https://dom.spec.whatwg.org/#dictdef-eventlisteneroptions),但在 IE / Edge 和 Safari 中缺乏支持。 我假设我们可以在这里做一个例外,因为不支持它的浏览器会忽略选项对象,对吗?