三种检测iPhone/iPad设备方向的方法
更新时间:2014年04月23日 15:37:31 作者:
这篇文章主要介绍了检测iPhone/iPad设备方向的三种方法,需要的朋友可以参考下
使用meta tag "viewport"
viewport标签包含如下属性:
为了能自动探测并适配到屏幕宽度,应该使用device-with而不是设定一个固定值,另外为了避免用户缩放导致界面超出屏幕,需要设置maximum-scale,
<meta name="viewport" content="width=device-width, maximum-scale=1.0" />
使用javascript脚本
下面的脚本通过检测屏幕宽度来检测方向并调整方向:
<script type="text/javascript">
var updateLayout = function() {
if (window.innerWidth != currentWidth) {
currentWidth = window.innerWidth;
var orient = (currentWidth == 320) ? "profile" : "landscape";
document.body.setAttribute("orient", orient);
window.scrollTo(0, 1);
}
};
iPhone.DomLoad(updateLayout);
setInterval(updateLayout, 400);
</script>
上述脚本可放在head部分
使用CSS
使用CSS的media query:
<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">
viewport标签包含如下属性:
为了能自动探测并适配到屏幕宽度,应该使用device-with而不是设定一个固定值,另外为了避免用户缩放导致界面超出屏幕,需要设置maximum-scale,
复制代码 代码如下:
<meta name="viewport" content="width=device-width, maximum-scale=1.0" />
使用javascript脚本
下面的脚本通过检测屏幕宽度来检测方向并调整方向:
复制代码 代码如下:
<script type="text/javascript">
var updateLayout = function() {
if (window.innerWidth != currentWidth) {
currentWidth = window.innerWidth;
var orient = (currentWidth == 320) ? "profile" : "landscape";
document.body.setAttribute("orient", orient);
window.scrollTo(0, 1);
}
};
iPhone.DomLoad(updateLayout);
setInterval(updateLayout, 400);
</script>
上述脚本可放在head部分
使用CSS
使用CSS的media query:
复制代码 代码如下:
<link rel="stylesheet" media="all and (orientation:portrait)" href="portrait.css">
<link rel="stylesheet" media="all and (orientation:landscape)" href="landscape.css">
相关文章
JavaScript中null和undefined的区别详解
null 是一个原始值,表示“无”或“空值”,它通常用于指示变量应有的对象或值不存在,undefined 是一个原始值,表示“未定义”,本文给大家详细介绍了JavaScript中null和undefined的区别,需要的朋友可以参考下2024-10-10


最新评论