addEventListener函数的第三个参数

addEventListener函数的第三个参数,其实是个对象.
对象的属性有三种,分别是capture,once,passive

capture是,所监听事件,是否会在捕获阶段执行(触发),为true就会触发.
默认为false(监听函数只在冒泡阶段被触发).
once,表示listener在添加之后最多只被调用一次.如果是true,监听事件会在被调用之后自动移除.

passive用于改善滚屏的性能
选项的默认值始终是false.但是,这引入了处理某些触摸事件(以及其他)的事件监听器在尝试处理滚动时阻止浏览器的主线程的可能性.

chrome和fireFox已经将文档节点window,Document和Document.body的touchstart和touchmove事件的passive选项的默认值改为true.这可以防止调用事件监听器,因此在用户滚动时无法阻止页面呈现.
添加passive参数后,touchmove事件不会阻塞页面的滚动(同样适用于鼠标的滚轮事件)

posted @ 2021-02-25 14:26  飞向火星  阅读(958)  评论(0编辑  收藏  举报