什么是被动事件监听器?
在努力提高渐进式Web应用程序的性能时,我遇到了一项新功能Passive Event Listeners
,但我很难理解这一概念。
Passive Event Listeners
在我们的项目中有什么以及有什么需要?
-
被动事件侦听器是一种新兴的网络标准,是Chrome51附带的一项新功能,可极大提高滚动性能。
通过消除滚动以阻止触摸和滚轮事件监听器的需求,它使开发人员可以选择更好的滚动性能。
问题:
所有现代浏览器都具有线程化滚动功能,即使在运行昂贵的JavaScript时,滚动操作也可以平稳运行,但是这种优化由于需要等待任何touchstart
和touchmove
处理程序的结果而被部分挫败,这可能会通过调用来完全阻止滚动preventDefault()
在事件上。解:
{passive: true}
通过将触摸或滚轮侦听器标记为被动,开发人员保证处理程序不会调用
preventDefault
以禁用滚动。This frees the browser up to respond to scrolling immediately without waiting for JavaScript, thus ensuring a reliably smooth scrolling experience for the user
。document.addEventListener("touchstart", function(e) { console.log(e.defaultPrevented); // will be false e.preventDefault(); // does nothing since the listener is passive console.log(e.defaultPrevented); // still false }, Modernizr.passiveeventlisteners ? {passive: true} : false);
-
什么是被动事件监听器?
2022-05-26 关注 0 浏览17 1答案
-
删除匿名事件监听器
2021-02-02 关注 0 浏览65 1答案
-
Zookeeper Watcher(事件监听器)?
2020-11-26 关注 0 浏览714 1答案
-
SQLAlchemy Mixins /和事件监听器
2021-01-29 关注 0 浏览100 1答案
-
AngularJS - $destroy 是否删除事件监听器?
2022-07-28 关注 0 浏览15 1答案
-
下列事件监听器中,无法对TextField对象进行事件监听和处理的是( )。
2022-05-11 关注 0 浏览10 1答案
-
下列事件监听器中,无法对TextField对象进行事件监听和处理的是( )。
2022-05-11 关注 0 浏览16 1答案
-
向点击事件监听器添加“返回假”有什么作用?
2021-02-02 关注 0 浏览89 1答案
-
Android自定义事件监听器
2021-01-29 关注 0 浏览805 1答案
-
JavaScript自定义事件监听器
2021-02-02 关注 0 浏览97 1答案