ChromeがタッチスクリーンPCで使用されているときに、自分のWebアプリケーションのページがスクロールしないことに気付きました。問題をテストするには、chrome://flags
に行き、 "Touch Events API"を無効にしてください。逆に、私の開発マシンに問題を表示させるために、私はそれを有効にします(デフォルトはautoです)。Chrome「Touch Events API」がスクロールを中断する
、Chromeのコンソール出力:
[違反]スクロール・ブロッキング
touchstart
イベントに非受動的なイベントリスナーを追加しました。ページをより敏感にするには、イベントハンドラを「パッシブ」としてマークすることを検討してください。[違反]スクロールブロッキング
touchmove
イベントに非受動的なイベントリスナーを追加しました。ページをより敏感にするには、イベントハンドラを「パッシブ」としてマークすることを検討してください。
この違反は私のjquery.min.js
ファイルからのものです。バージョンは2.1.3です。
質問:
- 私は、任意のタッチ機能を必要としない - 私は、タッチイベントAPIを無効にすることができます。 そして/またはそのベストプラクティスですか?
- jQueryの最新バージョンでこの問題が修正されますか?私はこのような大きなバージョンジャンプについて心配しています...
- 違反のアドバイスを読んで、私は "イベントハンドラを「受動的」とマークして、ページをより反応的にすることを検討してください。 - どういう意味ですか?ウィンドウサイズやスクロールに影響を与えるいくつかのJS関数がありますが、どうすればそれらを受動的にすることができますか?