【发布时间】:2010-10-13 23:20:58
【问题描述】:
新的 iPhone 3.0 操作系统即将问世。有谁知道它是否允许网络应用通过元标记或 javascript 强制横向模式?
【问题讨论】:
标签: iphone iphone-sdk-3.0 orientation
新的 iPhone 3.0 操作系统即将问世。有谁知道它是否允许网络应用通过元标记或 javascript 强制横向模式?
【问题讨论】:
标签: iphone iphone-sdk-3.0 orientation
唉,如果我们知道,我们不能告诉你。这一切都在传统的 Apple NDA 之下。
【讨论】:
iPhone 3.0 SDK 是 Beta 版,与 Apple 的所有预发布或其他未发布信息一样,它处于保密状态。
您可以通过注册成为商业 iPhone 开发者(99 美元)自行下载并查看它,但在 iPhone OS 3.0 正式发布之前,不允许进行无偿访问和公开讨论。
【讨论】:
我不知道强制方向,但至少2.0及以上版本你当然可以阅读:
if( (window.orientation != 90) && (window.orientation != -90) )
alert('Please rotate your iPhone into landscape mode.');
或者,为了更加用户友好,不要要求他们点击“确定”。
改为监听用户旋转屏幕时发生的事件,如下所述:
http://www.sitepoint.com/article/iphone-development-12-tips/2/
接下来,将所有内容放在一个 DIV 中,并在另一个 DIV 中显示友好的“请轮换”消息。
<body class="portrait">
<div id="content">My content goes here</div>
<div id="rotateme">Please rotate your iPhone into landscape mode.</div>
</body>
最后,根据方向设置样式,只显示上述其中一项:
body.portrait div#content { display: none; }
body.portrait div#rotateme { display: block; }
body.landscape div#content { display: block; }
body.landscape div#rotateme { display: none; }
这可能不是“iPhone 3.0 的方式”做事(知道的人不会说),但至少不管用户是否升级它都可以工作。 (请记住,iPod Touch 用户必须付费升级并获得很少的新功能……他们可能不会那么快赶上 3.0 的潮流。)
【讨论】: