Heim > Web-Frontend > js-Tutorial > So erkennen Sie Fingerwischbewegungen auf einem mobilen Gerät mithilfe von JavaScript

So erkennen Sie Fingerwischbewegungen auf einem mobilen Gerät mithilfe von JavaScript

Barbara Streisand
Freigeben: 2024-10-19 18:50:02
Original
283 Leute haben es durchsucht

How to Detect Finger Swipes on a Mobile Device Using JavaScript

Fingerbewegungen auf iPhone und Android mithilfe von JavaScript erkennen

Die Erkennung von Fingerbewegungen auf Webseiten ist für die Erstellung interaktiver mobiler Erlebnisse von entscheidender Bedeutung. In diesem Artikel wird eine vielseitige JavaScript-Lösung untersucht, die nahtlos sowohl auf iPhone- als auch auf Android-Geräten funktioniert.

So erkennen Sie Fingerbewegungen:

  1. Implementieren Sie Ereignis-Listener für Touchstart- und Touchmove-Ereignisse.
  2. Verfolgen Sie die anfängliche Berührungsposition in den Variablen xDown und yDown.
  3. Verwenden Sie getTouches(), um Berührungsereignisse in verschiedenen Browsern zu normalisieren.
  4. Berechnen Sie in der Funktion handleTouchMove die Differenz zwischen der anfänglichen und der aktuellen Berühren Sie Positionen.
  5. Überprüfen Sie, ob die horizontale (X-Differenz) oder vertikale (Y-Differenz) Bewegung signifikanter ist.
  6. Bestimmen Sie anhand der Differenz die Wischrichtung (links, rechts, oben, oder herunter).

Hier ist ein einfaches JavaScript-Codebeispiel zur Implementierung dieser Lösung:

<code class="js">document.addEventListener('touchstart', handleTouchStart, false);
document.addEventListener('touchmove', handleTouchMove, false);

var xDown = null;
var yDown = null;

function getTouches(evt) {
  return evt.touches || evt.originalEvent.touches;
}

function handleTouchStart(evt) {
  const firstTouch = getTouches(evt)[0];
  xDown = firstTouch.clientX;
  yDown = firstTouch.clientY;
}

function handleTouchMove(evt) {
  if (!xDown || !yDown) {
    return;
  }

  var xUp = evt.touches[0].clientX;
  var yUp = evt.touches[0].clientY;

  var xDiff = xDown - xUp;
  var yDiff = yDown - yUp;

  if (Math.abs(xDiff) > Math.abs(yDiff)) {
    if (xDiff > 0) {
      /* right swipe */
    } else {
      /* left swipe */
    }
  } else {
    if (yDiff > 0) {
      /* down swipe */
    } else {
      /* up swipe */
    }
  }

  /* reset values */
  xDown = null;
  yDown = null;
}</code>
Nach dem Login kopieren

Dieser Code wurde erfolgreich auf Android-Geräten getestet. Durch den Einsatz dieser JavaScript-Techniken können Sie Fingerbewegungen leicht erkennen und das Benutzererlebnis Ihrer mobilen Webanwendungen verbessern.

Das obige ist der detaillierte Inhalt vonSo erkennen Sie Fingerwischbewegungen auf einem mobilen Gerät mithilfe von JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage