iscroll を使用して、長い div を ipad でスクロールできるようにしています。ただし、iscroll が touch イベントをジャックしたため、ユーザーは div 内のテキストを選択できなくなりました。
これに対する回避策があるかどうか誰かが知っていますか?
理論的には、iscroll はタッチではなくドラッグに応答するはずですが、実際にはこれは起こっていないようです。
この問題を抱えている他の人はいますか?
iscroll を使用して、長い div を ipad でスクロールできるようにしています。ただし、iscroll が touch イベントをジャックしたため、ユーザーは div 内のテキストを選択できなくなりました。
これに対する回避策があるかどうか誰かが知っていますか?
理論的には、iscroll はタッチではなくドラッグに応答するはずですが、実際にはこれは起こっていないようです。
この問題を抱えている他の人はいますか?
IScroll 5 の場合、次のコードを使用しますhttps://github.com/cubiq/iscroll/issues/439#issuecomment-53553645
マウス クリック ドラッグ スクロールを無効にして、マウス ホイール スクロールを有効にするには、次のオプションを使用します。
mouseWheel: true,
disableMouse: true
preventDefaultExceptions
psこれは、ここのようにストレスフルな注入なしにIScroll内のテキストを強調表示できないという問題の良い修正でもありますhttp://jsfiddle.net/UDF59/
iScroll を実装する場合、通常、サンプル ファイル
-webkit-user-select:none;
には body タグに関する css ルールがあります。このルールは、ドラッグする前にタッチ アンド ホールドした場合に、テキストが選択されないようにするのに役立ちます。その行を削除 (コメントアウト) して、テキスト選択機能を復元します。ただし、この方法では、ユーザーが iScroll 対応領域を操作しているときに、不適切な瞬間にテキスト セレクターが表示される可能性があります。乾杯
iscroll.jsファイルで次の行を見つけます。
129(for me): onBeforeScrollStart: function (e) { e.preventDefault(); },
ここで、テキスト選択を許可するブロックの className を使用するだけです。このような
onBeforeScrollStart: function (e) { if (!el.match("block")) e.preventDefault(); }
エージェントはデフォルトの動作を妨げず、ユーザーがテキストを選択できるようにします。