【问题标题】:How to show page only in landscape mode?如何仅在横向模式下显示页面?
【发布时间】:2012-09-03 08:46:50
【问题描述】:

这个主题在这里有很多关于 SO 的帖子,但我想知道是否有人真的找到了解决方案。

我想强制某些页面仅以横向模式显示。

我该怎么做?

我正在使用jQuery Mobile 脚本。

【问题讨论】:

  • 您的意思是,如果有人以纵向访问您的网站,他们会看到错误?
  • 不,如果他们以纵向模式访问它,那么我需要旋转才能进入横向

标签: javascript jquery mobile jquery-mobile screen-rotation


【解决方案1】:

取决于您使用的平台/设备..

你不能像这样进行 api 调用吗?

if(approiateAPICALL.orientation == "landscape")
{
//handle land scapre
}
else
{
// handle anything else
}

您可以通过检查宽度 > 高度然后是横向来处理这个问题 如果高度 > 宽度那么它的肖像......

^不是最好的方法,但只是一个例子

更新:

换向时机

orientationchange 的时间与方向变化的关系 客户端的高度和宽度在浏览器之间是不同的,尽管 当前的实现将为您提供正确的值 event.orientation 派生自 window.orientation。这意味着如果 您的绑定取决于您可能的高度和宽度值 想要一起禁用orientationChange $.mobile.orientationChangeEnabled = false 让后备调整大小 代码触发您的绑定。

【讨论】:

  • 嗯,我刚刚看到 jquery mobile 有一个方向事件:jquerymobile.com/demos/1.1.1/docs/api/events.html,但我需要一些关于如何实际旋转它的逻辑
  • 所以如果我将它设置为 false 那么会发生什么?
  • 停止页面方向变化
【解决方案2】:

在调整大小时,检查屏幕纵横比是否大于 1.0(宽度/高度),如果是则显示您的页面,如果不隐藏您的页面并显示一条消息,要求用户旋转他们的设备。

您可以使用不同的比例来获得与高度成比例的更宽页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-17
    • 2011-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-01
    • 2017-10-05
    • 2014-03-26
    相关资源
    最近更新 更多