2016-02-12 187 views
0

我試圖啓用/禁用基於iPad方向的插件。如何更正此語法以檢測ipad瀏覽器方向

我開始用這個:https://jsfiddle.net/4hnr2ef8/

我隨後發現this article recommendeding這種方法,我現在有這個,但語法正確的?我閉上,似乎開放區域,但沒有運氣:https://jsfiddle.net/am86cqto/

function readDeviceOrientation() { 
switch (window.orientation) { 
case 0: 

    // Portrait 
    break; 
    $(function() { 
     $.scrollify({ 
      section : ".scrollify", 
      sectionName: "section-name", 
      easing: "easeInOutCubic", 
      scrollSpeed: 1100 
     }); 
    var s = skrollr.init({ 
     forceHeight: false 
    }); 

case 180: 

    // Portrait (Upside-down) 
    break; 
    $(function() { 
     $.scrollify({ 
      section : ".scrollify", 
      sectionName: "section-name", 
      easing: "easeInOutCubic", 
      scrollSpeed: 1100 
     }); 
    var s = skrollr.init({ 
     forceHeight: false 
    }); 

case -90: 

    // Landscape (Clockwise) 
    break; 
    if ($(window).width() < 768) { 
     $.scrollify.disable() 
    } 
    else { 
     $.scrollify.enable() 
    } 

case 90: 

    // Landscape (Counterclockwise) 
    break; 
    if ($(window).width() < 768) { 
     $.scrollify.disable() 
    } 
    else { 
     $.scrollify.enable() 
    } 
} 

}

感謝, 凱文W.

回答

0

你必須用這種方式,直到瀏覽器支持window.screen.orientation

function getScreenOrientation(){ 
return screen.width > screen.height ? "landscape" : "portrait"; 
} 

僅在手機和平​​板電腦上檢測方向

function getScreenOrientation(){ 
    if (/Mobi/.test(navigator.userAgent)) { 
     return screen.width > screen.height ? "landscape" : "portrait"; 
    } 
    return "landscape"; 
} 
+0

但是縱向尺寸寬度下的瀏覽器桌面怎麼樣?你可以重構代碼並提供小提琴嗎? – KevinOrin

+0

@KevinOrin如果您只想檢測手機和平板電腦的方向,請使用第二個功能 – Darshan