Вы можете попробовать решение, совместимое со всеми браузерами.
Ниже приведена orientationchange
картинка совместимости:
поэтому я пишу orientaionchange
polyfill, он основан на атрибуте @media для исправления служебной библиотеки ориджинации изменений —— Ориентация-исправления
window.addEventListener('orientationchange', function(){
if(window.neworientation.current === 'portrait|landscape'){
// do something……
} else {
// do something……
}
}, false);
и затем вы можете получить текущее состояние ориентации с помощью window.neworientation.current
и начальное состояние ориентации с помощью window.neworientation.init
.