我正在构建 iPhone Web 应用程序,并希望将方向锁定为纵向模式。这可能吗?有没有任何网络工具包扩展可以做到这一点?
请注意,这是一个用 HTML 和 JavaScript 编写的适用于 Mobile Safari 的应用程序,而不是用 Objective-C 编写的本机应用程序。
这是一个相当老套的解决方案,但它至少是一些东西(?)。这个想法是使用 CSS 转换将页面内容旋转到准纵向模式。以下是可帮助您入门的 JavaScript(以 jQuery 表示)代码:
$(document).ready(function () {
function reorient(e) {
var portrait = (window.orientation % 180 == 0);
$("body > div").css("-webkit-transform", !portrait ? "rotate(-90deg)" : "");
}
window.onorientationchange = reorient;
window.setTimeout(reorient, 0);
});
该代码期望页面的全部内容位于 body 元素内的 div 内。它将横向模式下的 div 旋转 90 度 - 回到纵向模式。
留给读者作为练习:div 围绕其中心点旋转,因此可能需要调整其位置,除非它是完美的正方形。
此外,还存在一个不吸引人的视觉问题。当您改变方向时,Safari 会缓慢旋转,然后顶层 div 会捕捉到 90 度不同的角度。为了获得更多乐趣,请添加
body > div { -webkit-transition: all 1s ease-in-out; }
到你的CSS。当设备旋转时,Safari 也会旋转,页面内容也会旋转。迷人!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)