chrome 监听touch类事件报错:无法被动侦听事件preventDefault

原来经常使用的一段代码,本人几乎使用touchmove的情况居多,移动端要禁止滑动操作:

document.addEventListener('touchstart', function(event) {
    event.preventDefault();
}, false);

新版chrome,给这个preventDefault返回了naive,不再是清除浏览器默认行为了。
event.cancelable 浏览器默认行为是否可以被禁用
event.defaultPrevented 浏览器默认行为是否已经被禁用

新写法:

document.addEventListener('touchstart', function(event) {
    // 判断默认行为是否可以被禁用
    if (event.cancelable) {
        // 判断默认行为是否已经被禁用
        if (!event.defaultPrevented) {
            event.preventDefault();
        }
    }
}, false);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容