検索
ホームページウェブフロントエンドCSSチュートリアルH5 タッチイベントでユーザーのスライド方向を決定する方法

今回は、H5 タッチイベントでユーザーのスライド方向を決定する方法を説明します。H5 タッチイベントでユーザーのスライド方向を決定するための注意点は何ですか? ここで実際のケースを見てみましょう。

Interface

TouchEvent

TouchEvent は、タッチ サーフェス (タッチ スクリーン、タッチ パッドなど) 上の指の状態変化を記述するイベントの一種です。このタイプのイベントは 1 つ以上のタッチ ポイントを記述するために使用され、開発者がタッチ ポイントの移動、タッチ ポイントの増減などを検出できるようにします。各 Touch オブジェクトはタッチ ポイントを表し、各タッチ ポイントはその位置、サイズ、形状、圧力レベル、およびターゲット要素によって記述されます。 TouchList オブジェクトは、複数のタッチ ポイントのリストを表します。

タッチ イベントの種類

タッチに関連した状態変化を区別するために、複数の種類のタッチ イベントが存在します。現在のイベントのタイプは、タッチ イベントの TouchEvent.type プロパティを確認することで判断できます。

  1. touchstart: ユーザーがタッチ サーフェスにタッチ ポイントを置いたときに発生します。

  2. touchend: ユーザーによってタッチ ポイントがタッチ表面から削除されたとき (ユーザーがタッチ表面から指を離したとき) にトリガーされます。

  3. touchmove: ユーザーがタッチ面上でタッチポイントを移動するとトリガーされます。

  4. touchcancel: 何らかの理由で連絡が中断されたときにトリガーされます。

スライド方向を決定する

基本原理は、スライド開始(touchStart)とスライド終了(touchEnd)の座標位置を記録し、相対位置を計算することです。

touchStart:function(e){
    startX = e.touches[0].pageX;
    startY = e.touches[0].pageY;
    e = e || window.event;
 },
touchEnd:function(e){
    const that = this;
    endX = e.changedTouches[0].pageX;
    endY = e.changedTouches[0].pageY;
    that.upOrDown(startX,startY,endX,endY);
},
upOrDown:function (startX, startY, endX, endY) {
    const that = this;
    let direction = that.GetSlideDirection(startX, startY, endX, endY);
    switch(direction) {
      case 0:
        console.log("没滑动");
        break;
      case 1:
        console.log("向上");
        break;
      case 2:
        console.log("向下");
        break;
      case 3:
        console.log("向左");
        break;
      case 4:
        console.log("向右");
        break;
      default:
        break;
    }
  },
//根据起点和终点返回方向 1:向上,2:向下,3:向左,4:向右,0:未滑动
  GetSlideDirection:function (startX, startY, endX, endY) {
    const that = this;
    let dy = startY - endY;
    let dx = endX - startX;
    let result = 0;
    //如果滑动距离太短
    if(Math.abs(dx) = -45 && angle = 45 && angle = -135 && angle = 135 && angle = -180 && angle <p style="text-align: left;"><span style="color: #ff0000"><strong>ネイティブ JS メソッド</strong></span></p><p style="text-align: left;"> H5 の新しいメソッドに加えて、ネイティブ JS を使用してビューのスライド方向を決定することもできます。コードは次のとおりです (直接実行できます)。 chrome は document.body に悪影響を与えることに注意してください。scrollTop は常に 0 であり、documentElement.scrollTop に変更する必要があります</p><pre class="brush:php;toolbar:false">nbsp;html>


  <meta>
  <title> 脚本之家(jb51.net)</title>
  <style>
    p {
      border: 1px solid black;
      width: 200px;
      height: 100px;
      overflow: scroll;
    }
  </style>


<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<h1 id="HEllo-word">HEllo word</h1>
<script>
  function scroll( fn ) {
    var beforeScrollTop = document.documentElement.scrollTop,
      fn = fn || function() {};
    console.log(&#39;beforeScrollTop&#39;,beforeScrollTop);
    window.addEventListener("scroll", function() {
      var afterScrollTop = document.documentElement.scrollTop,
        delta = afterScrollTop - beforeScrollTop;
      console.log(&#39;beforeScrollTop&#39;,beforeScrollTop);
      console.log(&#39;afterScrollTop&#39;,afterScrollTop);
      if( delta === 0 ) return false;
      fn( delta > 0 ? "down" : "up" );
      beforeScrollTop = afterScrollTop;
    }, false);
  }
  scroll(function(direction) { console.log(direction) });
</script>

この記事のケースを読んだ後、この方法をマスターしたと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事にご注目ください。

推奨読書:

メールアドレス形式を確認する方法


CSS float を使用するためのヒント

以上がH5 タッチイベントでユーザーのスライド方向を決定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
カーソルの次のレベルCSSスタイリングカーソルの次のレベルCSSスタイリングApr 23, 2025 am 11:04 AM

CSSを備えたカスタムカーソルは素晴らしいですが、JavaScriptを使用して次のレベルに物事を引き出すことができます。 JavaScriptを使用して、カーソル状態間で移行し、カーソル内に動的テキストを配置し、複雑なアニメーションを適用し、フィルターを適用できます。

Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Apr 23, 2025 am 10:42 AM

2025年には、互いに互いに跳ね返る要素を伴うインタラクティブなCSSアニメーションは、CSSにPongを実装する必要はありませんが、CSSの柔軟性とパワーの増加はLee&#039;の疑いを補強します。

UI効果にCSSバックドロップフィルターを使用しますUI効果にCSSバックドロップフィルターを使用しますApr 23, 2025 am 10:20 AM

CSSバックドロップフィルタープロパティを使用してユーザーインターフェイスをスタイルするためのヒントとコツ。バックドロップフィルターを複数の要素間でレイヤー化する方法を学び、それらを他のCSSグラフィカル効果と統合して、精巧なデザインを作成します。

微笑んでいますか?微笑んでいますか?Apr 23, 2025 am 09:57 AM

まあ、SVG&#039;の組み込みのアニメーション機能は、計画どおりに非推奨されることはありませんでした。確かに、CSSとJavaScriptは負荷を運ぶことができる以上のものですが、以前のようにSmilが水中で死んでいないことを知っておくのは良いことです

「かわいい」は見る人の目にあります「かわいい」は見る人の目にありますApr 23, 2025 am 09:40 AM

イェーイ、テキストワラップのジャンプを見てみましょう:サファリテクノロジーのプレビューにかなり着陸してください!しかし、それがChromiumブラウザーでの仕組みとは異なることに注意してください。

CSS-Tricks XLIIIを記録しますCSS-Tricks XLIIIを記録しますApr 23, 2025 am 09:35 AM

このCSS-Tricksアップデートは、アルマナック、最近のポッドキャスト出演、新しいCSSカウンターガイド、および貴重なコンテンツを提供するいくつかの新しい著者の追加の大幅な進歩を強調しています。

Tailwind&#039;の@Apply機能は、響きよりも優れていますTailwind&#039;の@Apply機能は、響きよりも優れていますApr 23, 2025 am 09:23 AM

ほとんどの場合、人々はTailwind&#039;の@Apply機能を紹介します。このように展示されたとき、@Applyはまったく有望な音をしません。だからobvio

私はリリースがないように感じます:正気な展開への旅私はリリースがないように感じます:正気な展開への旅Apr 23, 2025 am 09:19 AM

馬鹿のように展開することは、展開に使用するツールと複雑さの報酬と複雑さの減少との間の不一致になります。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)