JSFiddle - React, Tailwind, and code Playground
by lmk123
JavaScript
function landspaceFunc () {
// https://developer.mozilla.org/en-US/docs/Web/API/Window/orientation
if ('orientation' in window) {
return function () {
alert('window.orientation:' + (typeof window.orientation) + '&' + window.orientation)
return window.orientation === 90 || window.orientation === -90
}
}
// 在 PC 端开发时用 outer 会导致应用总是横屏状态,所以加个判断
// Android 端支持 outer,但在 iOS 下 outer 的值总是 0
if ('ontouchstart' in window && window.outerHeight && window.outerWidth) {
return function () {
alert('outer:' + window.outerWidth + '&' + window.outerHeight)
return window.outerWidth > window.outerHeight
}
}
return function () {
alert('inner:' + window.innerWidth + '&' + window.innerHeight)
return window.innerWidth > window.innerHeight
}
}
var isLandspace = landspaceFunc()
setTimeout(function () {
isLandspace()
}, 2000)