iOS Safari –オーバースクロールを無効にして、スクロール可能なdivに通常のスクロールを許可する方法
私はiPadベースのWebアプリで作業しています。Webページのように見えないように、オーバースクロールを防ぐ必要があります。私は現在、これを使用してビューポートをフリーズし、オーバースクロールを無効にしています: document.body.addEventListener('touchmove',function(e){ e.preventDefault(); }); これはオーバースクロールを無効にするのに最適ですが、私のアプリにはいくつかのスクロール可能なdivがあり、上記のコードではスクロールできません。 私はiOS 5以上のみをターゲットにしているので、iScrollのようなハッキーなソリューションは避けました。代わりに、スクロール可能なdivにこのCSSを使用しています。 .scrollable { -webkit-overflow-scrolling: touch; overflow-y:auto; } これはドキュメントのオーバースクロールスクリプトなしで機能しますが、divスクロールの問題を解決しません。 jQueryプラグインなしで、オーバースクロールの修正を使用する方法はありますが、私の$( '。scrollable')divを免除しますか? 編集: 私はまともな解決策であるものを見つけました: // Disable overscroll / viewport moving on everything but scrollable divs $('body').on('touchmove', function (e) { if (!$('.scrollable').has($(e.target)).length) e.preventDefault(); }); divの先頭または末尾を超えてスクロールしても、ビューポートは移動します。それを無効にする方法も見つけたいのですが。