Próbuję wykryć orientację urządzenia na mojej stronie.początkowe okno.orientacja zawsze 0 na Windows Phone
Wartość orientacji wydaje się być w porządku po wydarzeniu orientationchange
.
$(window).on("orientationchange",function(event){alert(window.orientation);})
Problemem jest początkowa wartość window.orientation przy uruchomieniu strony, która zawsze wynosi 0, nawet gdy urządzenie znajduje się w pozycji poziomej.
$(document).ready(function(){alert(window.orientation);});
Nie zmienia to jednak po pewnym opóźnieniem (Sprawdziłem to) zmienia wartości prawego dopiero po orientationchange
imprezy.
Czy istnieje sposób na uzyskanie właściwej orientacji przy uruchamianiu strony?
Jest obsługiwany w systemie Windows Phone - kiedy wykonuję obrót, wartość orientacji jest prawidłowa, problem występuje przed każdym obróceniem urządzenia. Nie mogę używać reguł CSS, ponieważ odnoszą się one do wymiarów ekranu, a nie do wartości window.orientation, która może być różna dla niektórych urządzeń, nawet jeśli oba są w pozycji poziomej, np. http://pioul.fr/cross-device-cross-browser-portret-landscape-detection –
@pawlakppp jeśli rzeczywiście czytasz artykuł, który sam łączysz, stwierdza, że nie należy ufać window.orientation, a także podaje przykłady jak różne przeglądarki dają różne wyniki w tych samych sytuacjach – Siada
nie należy ufać, jeśli chcesz uzyskać pozycję landscape/portrati w oparciu o window.orientation. Nie chcę tego. Używam wartości akcelerometru z javascript i używam względnych wartości x lub y Przyspieszanie w oparciu o window.orientation. To dlatego potrzebuję tego. –