kleinen Bildschirm zu erfassen, während für Responsive Design wartet auf den Weg in eine Legacy-Website zu finden, würde Ich mag einen Browser auf eine mobile Version umleiten, wenn der Bildschirm kleiner als 480pxneueste Methode
istJagd um kam ich up mit
var isSmall = window.matchMedia ?
window.matchMedia("screen and (max-width: 480px)") :
screen.width<=480;
Frage
ist das im Jahr 2014 akzeptabel ist oder gibt es eine bessere/sichere/neuere Methode zu tun, was ich will, ohne User-Agenten-Sniffing mit?
Referenzen
JavaScriptKit CSS media query matching in JavaScript using window.matchMedia()
QuirksMode screen.width is useless (daher auch der Zusatz von Matchmedia)
Stellen Sie sicher, auf iPhone 4 zu überprüfen, da sie eine Bildschirmbreite von 640px haben, aber ihre Bildschirmbreite als 320px aus Legacy-Gründen melden. – gaynorvader
Aber da sie MatchMedia unterstützen, soweit ich verstehe, gibt das vor der Verwendung von screen.width nicht false zurück? – mplungjan
Fwiw, der leichte Vorteil, den Sie mit User Agent Sniffing haben ist, dass Sie diese Server-Seite tun können, was zu einer etwas schnelleren Erfahrung führt, da eine Weiterleitung kein Dokument enthält. Sie würden wahrscheinlich immer noch einen Cookie-basierten Wechsel zwischen Handy/Desktop wünschen. –