3 Stimmen

Browser-Zoomstufe bei Seitenwechsel zurücksetzen

Ich habe eine mobile Website, die Seiten mit Ajax lädt. Eine der Funktionen, die ich gerne hinzufügen würde, ist das Zurücksetzen der Zoomstufe, wenn sich eine Seite ändert.

Gibt es eine gute Methode, um zu erkennen, ob ein Benutzer die Ansicht während der Anzeige einer Seite gezoomt hat?

Bis jetzt habe ich es geschafft, den Pinch-Zoom zu überprüfen. Aber manchmal gibt es auch Double-Tap-Zooming

10voto

Khallil Mangalji Punkte 471

Sie können die Zoomstufe des Benutzers ermitteln, indem Sie die innerWidth mit der Dokumentbreite vergleichen. Die Dokumentbreite ist die Breite des Geräts in Pixeln, die innere Breite sind die Pixel, die beim Zoomen auf dem Bildschirm zu sehen sind (im Verhältnis zur ursprünglichen Dokumentbreite). Ich habe dies auf Android (ICS und Jellybean) und iOS (5 und 6) getestet und es scheint zu funktionieren. Beachten Sie, ich habe nicht mein Ansichtsfenster auf Gerätebreite oder -höhe eingestellt

  ratio = document.width / window.innerWidth

  if ratio > 1 then zommed else notZoomed

Dann können Sie diese Prüfung jedes Mal durchführen, wenn ein Benutzer einen Doppeltipp oder eine Berührung ausführt.

1voto

Jamie Pate Punkte 1543

Sie können den Inhalt des [meta name="viewport"]-Tags mit Javascript einstellen, um die Zoomstufe festzulegen. Leider habe ich keine Möglichkeit gefunden, die aktuelle Zoomstufe zu ermitteln.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X