„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich mit JavaScript die Geräterotation in einem Browser auf Android zuverlässig erkennen?

Wie kann ich mit JavaScript die Geräterotation in einem Browser auf Android zuverlässig erkennen?

Veröffentlicht am 09.11.2024
Durchsuche:840

How can I Reliably Detect Device Rotation in a Browser on Android with JavaScript?

Geräterotation im Browser auf Android mit JavaScript erkennen

Kompatibilitätsprobleme bei der Rotationserkennung

Geräterotation mit JavaScript in erkennen Der Browser kann auf Android-Telefonen eine größere Herausforderung darstellen als auf iPhones, die über einen klar definierten Ansatz verfügen. Das Verhalten auf Android-Geräten kann inkonsistent sein, mit Variationen in der Reihenfolge und Häufigkeit von Ereignissen und Änderungen in Werten wie screen.width und window.orientation.

Zuverlässiger Ansatz zur Rotationserkennung

Um diese Inkonsistenzen zu beheben, wird empfohlen, sowohl die Größenänderungs- als auch die Ausrichtungsänderungsereignisse abzuhören und als Sicherheitsmaßnahme Abfragen zu implementieren. Dieser Ansatz stellt sicher, dass Sie letztendlich einen gültigen Orientierungswert erhalten.

var previousOrientation = window.orientation;
var checkOrientation = function(){
    if(window.orientation !== previousOrientation){
        previousOrientation = window.orientation;
        // Handle orientation change as needed
    }
};

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

// (Optional) Poll for orientation changes on Android (180 degree turns)
setInterval(checkOrientation, 2000);

Ereignissequenzen und Wertänderungen

Die Ereignissequenz und die Werteänderungen variieren je nach Gerät. Hier ist eine Tabelle, die die Ergebnisse verschiedener Geräte zusammenfasst:

GerätEreignisse ausgelöst (im Querformat)AusrichtunginnerWidthscreen.width
iPad 2Größe ändern, Ausrichtung ändern901024768
iPhone 4Größe ändern, Ausrichtung ändern90480320
DroidentelefonAusrichtung ändern, Größe ändern90320569
Samsung Galaxy TabletAusrichtungsänderung, Ausrichtungsänderung, Ausrichtungsänderung, Größe ändern, Ausrichtungsänderung90, 90, 90400683

Zusätzliche Überlegungen

Dieser Ansatz bietet zwar eine zuverlässige Möglichkeit, die Geräterotation zu erkennen, es ist jedoch wichtig, ihn beizubehalten Beachten Sie in diesem Zusammenhang die Einschränkungen von JavaScript. Beispielsweise ändern sich bestimmte Werte wie „screen.width“ möglicherweise nicht immer wie erwartet. Es wird außerdem empfohlen, sich nicht ausschließlich auf screen.width zu verlassen, da dieses auf allen iOS-Geräten inkonsistent ist.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3