Unable to preventDefault inside passive event listener due to target being treated as passive 今天在做项目的时候发现这个问题:于是Google了一下! 由于浏览器必须要在执行事件处理函数之后,才能知道有没有掉用过 preventDefault() ,这就导致了浏览器不能及时响应滚动,略有延迟. 所以为了让页面滚动的效果如丝般顺滑,从 chrome56 开始,在 window.document 和 bod…
移动端项目中,在滚动的时候,会报出以下提示: [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080 解决 在touch的事件监听方法上绑定第三个参数{ passive: false }, 通过传递 passive 为…
1.滑动时候警告[Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. 2.解决方案 解决办法1: 在touch的事件监听方法上绑定第三个参数{ passive: false }, 通过传递 passive 为 false 来明确告诉浏览器:事件处理程序调用 preventDefault 来阻止默认滑动行为. elem.addEven…
最近两天企业微信下IScroll突然无法滚动了,特别慢,之前好好的,发现主要是有红色的Unable to preventDefault inside passive event listener due to target being treated as passive频繁输出到控制台.在网上查找方法1.css里统一加 *{touch-action: none;} 2.将false修改为passive:false document.addEventListener('touchmove', f…
相信如果用谷歌浏览器做移动端页面的时候 用touch事件的时候应该遇到过这个东东吧 documet.addEventListener("touchstart",function(){ console.log(123); }); [Violation] Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' t…
最近写react项目的时候,引用了antd-mobile,在使用滚动组件的时候,发现谷歌浏览器会报以下警告 最初我以为是antd-mobile的问题导致的,然后我就无查看了之前的vue的项目,发现了类似的问题,这是为什么呢? 更具这篇文章https://developers.google.cn/web/updates/2017/01/scrolling-intervention找到了答案 由于浏览器必须要在执行事件处理函数之后,才能知道有没有掉用过 preventDefault() ,这就导致了…
本篇为转载,原文链接:https://blog.csdn.net/lijingshan34/article/details/88350456 翻译一下:chrome 监听touch类事件报错:无法被动侦听事件preventDefault,是新版本chrome 浏览器报错. 说明:说一下这个 preventDefault()是个什么鬼,这个是取消默认事件的,如果这个函数起作用的,比如默认的表单提交,a链接的点击跳转,就不好用了.原因:google浏览器为了最快速的相应touch事件,做出的改变.历…
解决办法: 两个方案:1.注册处理函数时,用如下方式,明确声明为不是被动的window.addEventListener('touchmove', func, { passive: false }) 2.应用 CSS 属性 touch-action: none; 这样任何触摸事件都不会产生默认行为,但是 touch 事件照样触发.touch-action 还有很多选项,详细请参考touch-action 链接:https://segmentfault.com/a/1190000008512184…
使用滚动时候,新版google浏览器,会弹出如下的警告. 解决方法,可以加上* { touch-action: none; } 这句样式去掉. 其原因:https://developers.google.com/web/updates/2017/01/scrolling-intervention(是chrome为了提高页面的滑动流畅度而新折腾出来的一个东西) 分析文章:https://segmentfault.com/a/1190000007913386?_ea=1507605…