Bagaimana untuk Mengesan Arah Leret Jari pada Halaman Web Mudah Alih dengan JavaScript (Keserasian iPhone/Android)?

DDD
Lepaskan: 2024-10-19 18:50:30
asal
598 orang telah melayarinya

How to Detect Finger Swipe Direction on Mobile Web Pages with JavaScript (iPhone/Android Compatibility)?

Mengesan Leretan Jari pada Halaman Web Mudah Alih

Dalam dunia tertumpu mudah alih hari ini, adalah penting untuk menyediakan pengalaman web yang intuitif dan responsif pada semua peranti . Pengguna mengharapkan navigasi dan interaksi yang lancar pada kedua-dua iPhone dan telefon Android. Satu gerak isyarat biasa yang penting untuk navigasi mudah alih ialah meleret jari.

Masalah: Bagaimanakah anda mengesan arah leretan jari pengguna dengan tepat pada halaman web menggunakan JavaScript, memastikan keserasian antara peranti iPhone dan Android ?

Penyelesaian: Nasib baik, penyemak imbas moden menyediakan API JavaScript yang membolehkan pembangun menjejaki peristiwa sentuhan. Berikut ialah coretan kod Vanilla JS mudah yang boleh anda masukkan ke dalam projek anda:

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

var xDown = null;                                                        
var yDown = null;

function getTouches(evt) {
  return evt.touches ||             // browser API
         evt.originalEvent.touches; // jQuery
}                                                     
                                                                         
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 ) ) {/*most significant*/
        if ( xDiff > 0 ) {
            /* right swipe */ 
        } else {
            /* left swipe */
        }                       
    } else {
        if ( yDiff > 0 ) {
            /* down swipe */ 
        } else { 
            /* up swipe */
        }                                                                 
    }
    /* reset values */
    xDown = null;
    yDown = null;                                             
};</code>
Salin selepas log masuk

Pengujian: Coretan kod ini telah diuji dan disahkan berfungsi pada peranti Android. Laksanakannya ke dalam projek anda untuk meningkatkan pengalaman pengguna untuk pengguna mudah alih pada kedua-dua telefon iPhone dan Android.

Atas ialah kandungan terperinci Bagaimana untuk Mengesan Arah Leret Jari pada Halaman Web Mudah Alih dengan JavaScript (Keserasian iPhone/Android)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!