强制横向模式锁定,仅允许纵向

时间:2015-08-20 12:03:44

标签: javascript android css jquery-mobile

任何人都告诉我什么是最好的解决方案,不允许在移动设备上使用横向模式,并强制在查看任何网页时使用Javascript,Jquery,CSS或其他任何内容锁定它。

1 个答案:

答案 0 :(得分:1)

您可以检查宽度大于高度的宽度,即景观。

你可以通过这种方式检查窗口大小调整它的横向或纵向 - 并采取相应的行动,就像在整个页面上放置一个固定的div一样。

像这样:

$(window).resize(function(){  //event onWindowResize
    if($(window).width() < $(window).height()) //So, portrait
        $("<div />").css({
            position: "fixed",
            width: "100%",
            height: "100%",
            top: 0,
            left: 0
        }).addClass("locked-for-portrait").text("Please use our website in landscape mode (turn your phone 90 degrees)").appendTo("body");  //add a fixed div over your page.
    else //So, landscape.
        $(".locked-for-portrait").remove(); //Remove the div - if it's on the page.
});

$(document).ready(function(){
    $(window).resize(); //trigger the resize once on pageload
});

在新的浏览器API中,可以使用网页锁定方向。但目前它仍然是实验性的,并不适用于大多数浏览器。 (见https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation