移動端的瀏覽器一般都支持window.orientation這個參數,通過這個參數可以判斷出手機是處在橫屏還是豎屏狀態。 從而根據實際需求而執行相應的程序。
通過添加監聽事件onorientationchange,進行執行就可以了。
//判斷手機橫豎屏狀態:
function hengshuping() {
if (window.orientation == 180 || window.orientation == 0) {
alert("豎屏狀態!")
}
if (window.orientation == 90 || window.orientation == -90) {
alert("橫屏狀態!")
}
}
window.addEventListener("onorientationchange" in window ? "orientationchange" : "resize", hengshuping, false);
function orient() {
if (window.orientation == 90 || window.orientation == -90) {
//ipad、iphone豎屏;Andriod橫屏
$("body").attr("class", "landscape");
orientation = 'landscape';
return false;
} else if (window.orientation == 0 || window.orientation == 180) {
//ipad、iphone橫屏;Andriod豎屏
$("body").attr("class", "portrait");
orientation = 'portrait';
return false;
}
}
//頁面加載時調用
$(function() {
orient();
});
//用戶變化屏幕方向時調用
$(window).bind('orientationchange', function(e) {
orient();
});
在ipad、iphone網頁開發中,我們很可能需要判斷是橫屏或者豎屏。
下面介紹如何用 jQuery 判斷iPad、iPhone、Android是橫屏還是豎屏的方法
屏幕方向對應的window.orientation值:
ipad: 90 或 -90 橫屏
ipad: 0 或180 豎屏
Andriod:0 或180 橫屏
Andriod: 90 或 -90 豎屏