jQuery 偵測手機是橫向或縱向

基本上是一個寫mobile web會很常用到的東西。

  1. var checkOrientation = function(){   
  2.     
  3.         mode = Math.abs(window.orientation) == 90 ? 'landscape' : 'portrait';   
  4.     
  5.         // 在 Android 上使用 Opera Mobile 測試, 發現要另外這樣判斷   
  6.         if ( $.browser.opera )   
  7.         {   
  8.             width = screen.width;   
  9.             height = screen.height;   
  10.             mode = width > height ? "landscape" : "portrait";   
  11.         }   
  12.     
  13.         // 本例為希望在使用者用橫向瀏覽時,就秀出遮罩或警示訊息   
  14.         if (mode == 'landscape')   
  15.         {   
  16.            // 警語遮罩 顯示   
  17.            $("#mask").show();   
  18.         } else {   
  19.            // 警語遮罩 關閉   
  20.            $("#mask").hide();   
  21.         }   
  22. };   
  23.     
  24. window.addEventListener("resize", checkOrientation, false);   
  25. window.addEventListener("orientationchange", checkOrientation, false);   
  26. setInterval(checkOrientation, 500);  

來源: [JavaScript] 判斷手機為直向或橫向
參考: Detect rotation of Android phone in the browser with javascript

留言