首頁 > web前端 > js教程 > 主體

如何使用 JavaScript 在瀏覽器中可靠地偵測 Android 手機旋轉?

Mary-Kate Olsen
發布: 2024-10-26 08:30:30
原創
828 人瀏覽過

How Can You Reliably Detect Android Phone Rotation in Browsers Using JavaScript?

使用JavaScript 偵測瀏覽器中的Android 手機旋轉

雖然可以使用JavaScript 偵測iPhone 上Safari 中的螢幕方向和變化,但在Android 手機上也可行嗎?

Android 上的響應式旋轉偵測

在Android 手機中,由於裝置和瀏覽器之間的行為不同,使用JavaScript 進行旋轉偵測是一件複雜的事情。僅依賴調整大小或方向更改事件是不可靠的。

可靠的方法

建議的方法包括監視調整大小和方向更改事件,透過輪詢間隔持續檢查方向更新.

<code class="javascript">var previousOrientation = window.orientation;
var checkOrientation = function(){
    if(window.orientation !== previousOrientation){
        previousOrientation = window.orientation;
        // orientation changed, do your magic here
    }
};

window.addEventListener("resize", checkOrientation, false);
window.addEventListener("orientationchange", checkOrientation, false);

// (optional) Android doesn't always fire orientationChange on 180 degree turns
setInterval(checkOrientation, 2000);</code>
登入後複製

設備特定行為

設備對方向變化的反應差異很大。以下是透過測試四種不同設備所獲得的事件排序和值的表格:

Device Events Fired orientation innerWidth screen.width
iPad 2 (to landscape) resize, orientationchange 0 1024 768
iPad 2 (to portrait) resize, orientationchange 90 768 768
iPhone 4 (to landscape) resize, orientationchange 0 480 320
iPhone 4 (to portrait) resize, orientationchange 90 320 320
Droid phone (to landscape) orientationchange, resize 90 320 320
Droid phone (to portrait) resize, orientationchange, resize 0 569 569
Samsung Galaxy Tablet (to landscape) orientationchange, orientationchange, resize 0 400 400
Samsung Galaxy Tablet (to portrait) orientationchange, orientationchange, orientationchange, resize 90 683 683

結論

雖然iOS 和Android 裝置之間方向變更的事件處理可能有所不同,但採用建議的方法可確保使用JavaScript 在Android 手機上進行可靠的方向檢測。

以上是如何使用 JavaScript 在瀏覽器中可靠地偵測 Android 手機旋轉?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!