Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何限制网站的横向模式_Javascript_Jquery_Css_Html_Responsive Design - Fatal编程技术网

Javascript 如何限制网站的横向模式

Javascript 如何限制网站的横向模式,javascript,jquery,css,html,responsive-design,Javascript,Jquery,Css,Html,Responsive Design,我有我的网站,想防止景观模式。我想让用户限制在potrait模式,因为我有自定义的标题,在固定位置使用大约100px的屏幕空间 此外,我希望这适用于屏幕宽度低于777px的设备 伙计们,请让我知道这是否可能,如果是,那么如何。当我使用用于将此标记为重复的代码时,我会遇到屏幕截图中的问题。使用css媒体查询显示一个标志以打开设备: #turn { display: none; z-index: 100; position: fixed; } @media (orientation:

我有我的网站,想防止景观模式。我想让用户限制在potrait模式,因为我有自定义的标题,在固定位置使用大约100px的屏幕空间

此外,我希望这适用于屏幕宽度低于777px的设备


伙计们,请让我知道这是否可能,如果是,那么如何。当我使用用于将此标记为重复的代码时,我会遇到屏幕截图中的问题。

使用css媒体查询显示一个标志以打开设备:

#turn {
  display: none;
  z-index: 100;
  position: fixed;
}

@media (orientation: landscape) {
  #turn {
    display:block;
  }
}

<div id="turn">
  Please turn your device
</div>
#转动{
显示:无;
z指数:100;
位置:固定;
}
@媒体(方向:景观){
#转向{
显示:块;
}
}
请打开你的设备

如果愿意,可以使用javascript解决此问题。 出于测试目的,您可以将以下代码添加到页面:

window.onresize = function (event) {
    console.log('resizing!');
    console.log(`new size: w${window.innerWidth} h${window.innerHeight}`);
    if(window.innerWidth < 777) {
        // do something
    }
    if(window.innerWidth > window.innerHeight) {
        // do something
    }
}
window.onresize=函数(事件){
console.log('resizing!');
log(`new size:w${window.innerWidth}h${window.innerHeight}`);
如果(窗内宽度<777){
//做点什么
}
if(window.innerWidth>window.innerHeight){
//做点什么
}
}

window.innerWidth
window.innerHeight
返回的值是一个数字,因此您可以使用它进行计算。

我想您可以尝试以下方法:

@media (orientation: landscape) and (max-width: 777px) {
  html {
    transform: rotateZ(90deg);
  }
}

但是显示一条要轮换的消息会更方便用户。有些人发现很难使用纵向模式。

我想限制用户使用横向模式,并且仅限于potrait模式。如果我当时想展示这个信息,我本可以早一点做的。@Abhishek Dhanraj Shahdeo:我现在没有更好的方法了,我想给你展示一个可能的解决方法谢谢你的朋友,但我要找的是不同的东西。如果您遇到任何解决方案,请务必让我知道。显示消息说他们需要使用肖像模式是实现您的目标的最佳方式。@AbhishekDhanrajShahdeo-您没有很好地定义您的问题。为什么要限制用户选择其界面?你无法阻止他们将手机切换到横向模式。这是iPhone/Safari内部的一种内部硬件/软件配置,支持接口方向。作为开发人员,您的工作是为所有可能的案例提供可访问性。如果您不想提供这种可访问性,那么用户将学习按照您的意愿使用网站,否则他们将根本不使用网站。这不是调整大小,而是用户在具有横向模式的设备中打开网站。这需要加以限制。