Heim > Web-Frontend > js-Tutorial > Wie können Sie die Rotation von Android-Telefonen in Browsern mithilfe von JavaScript zuverlässig erkennen?

Wie können Sie die Rotation von Android-Telefonen in Browsern mithilfe von JavaScript zuverlässig erkennen?

Mary-Kate Olsen
Freigeben: 2024-10-26 08:30:30
Original
928 Leute haben es durchsucht

How Can You Reliably Detect Android Phone Rotation in Browsers Using JavaScript?

Erkennen der Drehung von Android-Telefonen in Browsern mithilfe von JavaScript

Die Erkennung der Bildschirmausrichtung und von Änderungen in Safari auf iPhones mithilfe von JavaScript ist zwar möglich, aber ist dies auch auf Android-Telefonen möglich?

Responsive Rotationserkennung auf Android

Bei Android-Telefonen ist die Rotationserkennung mithilfe von JavaScript aufgrund des unterschiedlichen Verhaltens zwischen Geräten und Browsern eine komplexe Angelegenheit. Es ist unzuverlässig, sich ausschließlich auf die Größenänderungs- oder Ausrichtungsänderungsereignisse zu verlassen.

Zuverlässiger Ansatz

Der empfohlene Ansatz umfasst die Überwachung sowohl der Größenänderungs- als auch der Ausrichtungsänderungsereignisse und die kontinuierliche Überprüfung auf Ausrichtungsaktualisierungen durch Abfrageintervalle .

<code class="javascript">var previousOrientation = window.orientation;
var checkOrientation = function(){
    if(window.orientation !== previousOrientation){
        previousOrientation = window.orientation;
        // orientation changed, do your magic here
    }
};

window.addEventListener("resize", checkOrientation, false);
window.addEventListener("orientationchange", checkOrientation, false);

// (optional) Android doesn't always fire orientationChange on 180 degree turns
setInterval(checkOrientation, 2000);</code>
Nach dem Login kopieren

Gerätespezifisches Verhalten

Gerätereaktionen auf Ausrichtungsänderungen variieren erheblich. Hier ist eine Tabelle mit Ereignissequenzen und Werten, die beim Testen von vier verschiedenen Geräten erhalten wurden:

Device Events Fired orientation innerWidth screen.width
iPad 2 (to landscape) resize, orientationchange 0 1024 768
iPad 2 (to portrait) resize, orientationchange 90 768 768
iPhone 4 (to landscape) resize, orientationchange 0 480 320
iPhone 4 (to portrait) resize, orientationchange 90 320 320
Droid phone (to landscape) orientationchange, resize 90 320 320
Droid phone (to portrait) resize, orientationchange, resize 0 569 569
Samsung Galaxy Tablet (to landscape) orientationchange, orientationchange, resize 0 400 400
Samsung Galaxy Tablet (to portrait) orientationchange, orientationchange, orientationchange, resize 90 683 683

Fazit

Während die Ereignisbehandlung für Orientierungsänderungen zwischen iOS- und Android-Geräten unterschiedlich sein kann, gewährleistet die Verwendung des empfohlenen Ansatzes eine zuverlässige Orientierungserkennung auf Android-Telefonen mit JavaScript.

Das obige ist der detaillierte Inhalt vonWie können Sie die Rotation von Android-Telefonen in Browsern mithilfe von JavaScript zuverlässig erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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