滑動時候警告:Unable to preventDefault inside passive event listener


1 前言

在制作2048時,需要在手機端添加滑動檢測事件,然后發現控制台有警告,如下:

main2048.js:218 [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080

2 解決辦法:

在touch的事件監聽方法上綁定第三個參數{ passive: false },
通過傳遞 passive 為 false 來明確告訴瀏覽器:事件處理程序調用 preventDefault 來阻止默認滑動行為。

方法1

elem.addEventListener(
  'touchstart',
  fn,
  { passive: false }
);

方法2

* { touch-action: pan-y; } 
 使用全局樣式樣式去掉  

3 參考

1. 滑動時候警告:Unable to preventDefault inside passive event listener 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM