使用JS判斷移動端手機橫豎屏狀態(tài)
禁用用戶自動縮放功能:
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
判斷橫豎屏狀態(tài)有兩種方法:css判斷、js判斷
(一)、css判斷橫屏還是豎屏
1、寫在同一個css文件中
@media screen and (orientation: portrait) {
/*豎屏 css*/
}
@media screen and (orientation: landscape) {
/*橫屏 css*/
}
根據(jù)橫豎屏設置大小時,正常頁面尺寸常規(guī)書寫即可,橫屏樣式單獨設置。即只需在原有樣式基礎上添加橫屏樣式即可,
@media screen and (orientation: landscape) {
/*橫屏 css*/
}
當用戶橫屏時加載橫屏樣式,豎屏時取消橫屏樣式即加載默認樣式。
2、分開寫在兩個css中,根據(jù)橫豎屏引用不同樣式文件:
根據(jù)橫豎屏引用不同樣式文件
橫屏:
<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css" rel="external nofollow" >
豎屏:
<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css" rel="external nofollow" >
備注:css判斷橫豎屏是時時的可無縫銜接,即橫屏加載橫屏樣式,豎屏加載豎屏樣式,
(二)js判斷橫屏還是豎屏
//判斷手機橫豎屏狀態(tài):
window.addEventListener("onorientationchange" in window ? "orientationchange" : "resize", function() {
if (window.orientation === 180 || window.orientation === 0) {
console.log("豎屏");
$(".codeIg_s").removeClass('vercreen');//取消橫屏樣式
}
if (window.orientation === 90 || window.orientation === -90 ){
console.log("橫屏");
$(".codeIg_s").addClass('vercreen');//添加橫屏樣式
}
}, false);
備注:橫屏樣式在vercreen類名下修改原默認樣式,可正常使用,缺點是必須有橫豎屏的切換狀態(tài)才會觸發(fā)。
如果用戶默認是橫屏狀態(tài)時不會觸發(fā)橫屏條件判斷,只有用戶從橫屏轉(zhuǎn)為豎屏或者從豎屏轉(zhuǎn)為橫屏時才會觸發(fā)相應條件判斷。
沒有切換狀態(tài)時會不執(zhí)行任何條件判斷,此處不如css判斷橫豎屏全面。
總結(jié)
以上所述是小編給大家介紹的使用JS判斷移動端手機橫豎屏狀態(tài),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
JavaScript中yield實用簡潔實現(xiàn)方式
原以為是一個蠻復雜的題目,想了許久沒思路,當然要實現(xiàn)絕對能實現(xiàn),但如果分析JavaScript腳本或是動態(tài)產(chǎn)生代碼,都太復雜了。2010-06-06
JavaScript Event學習第二章 Event瀏覽器兼容性
在這一章我將對重要的事件做一個概述,包括一些流行的瀏覽器的兼容性問題。2010-02-02
微信小程序開發(fā)之點擊按鈕退出小程序的實現(xiàn)方法
這篇文章主要介紹了微信小程序開發(fā)之點擊按鈕退出小程序的實現(xiàn)方法,本恩通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04

