Czekając na elastyczne projektowanie znaleźć drogę do miejsca Legacy internetowej, chciałbym przekierować przeglądarkę do wersji mobilnej, jeśli ekran jest mniejszy niż 480pxNowsze metody wykrywania małym ekranie
Polowanie wokół Przyszedłem z
var isSmall = window.matchMedia ?
window.matchMedia("screen and (max-width: 480px)") :
screen.width<=480;
Pytanie
jest to dopuszczalne w 2014 czy istnieje lepsze/bezpieczniejsze/nowszy sposób robić to, co chcę bez użycia userAgent Sniffing?
Odniesienia
JavaScriptKit CSS media query matching in JavaScript using window.matchMedia()
QuirksMode screen.width is useless (stąd Dodanie matchMedia)
Upewnij się, aby sprawdzić na iPhone 4+, ponieważ mają szerokość ekranu "640px", ale zgłaszają szerokość ekranu jako "320px" ze względu na starsze wersje. – gaynorvader
Ale ponieważ obsługują one matchMedia, o ile rozumiem, to nie zwróci false przed użyciem screen.width? – mplungjan
Fwiw, niewielka zaleta, jaką masz przy wąchaniu agenta użytkownika, polega na tym, że możesz wykonać tę stronę serwera, co powoduje nieco szybsze działanie, ponieważ przekierowanie nie zawiera dokumentu. Prawdopodobnie chciałbyś jednak, aby przełącznik między plikami mobilnymi a komputerami był oparty na plikach cookie. –