是否有可靠的方法来检测从iPad上查看网页(没有误报)以及通过JavaScript的方向是什么?
我认为这对第一部分有好处:
var isiPad = navigator.userAgent.match(/iPad/i) != null;
我想我找到了第二部分:
<button onclick="detectIPadOrientation();">What's my Orientation?</button>
<script type="text/javascript">
window.onorientationchange = detectIPadOrientation;
function detectIPadOrientation () {
if ( orientation == 0 ) {
alert ('Portrait Mode, Home Button bottom');
} else if ( orientation == 90 ) {
alert ('Landscape Mode, Home Button right');
} else if ( orientation == -90 ) {
alert ('Landscape Mode, Home Button left');
} else if ( orientation == 180 ) {
alert ('Portrait Mode, Home Button top');
}
}
</script>
我不知道所有iPad是否可靠,例如新的小型iPad。所以我的问题是:这些功能是否可以在所有iPad上可靠运行?那会有误报吗?
答案 0 :(得分:0)
依靠用户代理字符串绝对不是一个好主意,因为它可能是欺骗性的。但是,您应该考虑阅读“响应式网页设计”
http://en.wikipedia.org/wiki/Responsive_web_design
我建议您使用jQuery。我有一种感觉,方向将是风景或肖像。我认为操作系统非常聪明,可以根据您持有设备的方式了解面向浏览器的方式。
考虑一下这个jQuery,这可能是你想要的......
$(window).resize(function() {
/* This function should be triggered when the orientation
changes since orientation essentially changes the window size. */
if($(window).width() == ipadLandScapeWidth) {
//Do this in landscape mode.
} else {
//Do this in portait mode.
}
});