検索

ホームページ  >  に質問  >  本文

android - touchmoveイベントページスクロールを無効にする方法

最近、iOS の AssistiveTouch に似た機能を H5 ページに作成しました。これは、ページ上で移動でき、使用していないときは自動的に側面に吸着する小さな中断されたウィジェットです。

発生する問題:

Android スマートフォンでは、ウィジェットを移動すると、それに応じてページがスクロールします。

ページのスクロールのスムーズさを向上させるために、Chrome ブラウザ touchmove事件里不能用 event.preventDefault() は新しい Chrome ブラウザでのページのスクロールを防止するためです。

新しいバインディング イベントは次のように処理する必要があります (passive: false 属性を追加しました)

リーリー

ただし、私はreactを使用してモニターを直接バインドします

リーリー

touchmove でウィジェットを移動するときにページがスクロールしないようにするにはどうすればよいですか?

天蓬老师天蓬老师2773日前830

全員に返信(1)返信します

  • PHP中文网

    PHP中文网2017-05-16 13:37:17

    直接来ます。 材料はここにあります

    イベント ハンドラーには、ブラウザーのネイティブ イベントのクロスブラウザー ラッパーである SyntheticEvent のインスタンスが渡されます。これは、ブラウザのネイティブ イベント (stopPropagation() やPreventDefault() など) と同じインターフェイスを備えていますが、イベントはすべてのブラウザで同様に動作します。

    何らかの理由で基礎となるブラウザ イベントが必要な場合は、nativeEvent 属性を使用してそれを取得します。すべての SyntheticEvent オブジェクトには次の属性があります:

    リーリー

    返事
    0
  • キャンセル返事