为什么在手机上document.documentElement.clientWidth是980?
document.documentElement.clientWidth这个值在电脑和ipad上就是分辨率的宽度,但是在手机上却恒定是980,为什么呢?测试代码如下:
<html>
<head>
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
(function loop(){
requestAnimationFrame(function(){
$('#doc').html( document.documentElement.clientWidth );
$('#win').html( window.innerWidth );
loop();
})
})();
</script>
</head>
<body>
<div id="w" style="border:solid 5px black;width:1200px;margin-top:50px;margin-left:50px;font-size:50px">
<div style="float:left">client:<span id="doc"></span></div>
<div style="clear:both"></div>
<div style="float:left">window:<span id="win"></span></div>
</div>
</body>
</html>
Answers
最主要是你在
<head>
里面添加下面代码,具体什么意思你自己搜去。
html
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
添加了上面这个标签,你再获取就是手机的分辨率宽度了。
网页可见区域宽:
document.body.clientWidth;
网页可见区域高:
document.body.clientHeight;
网页可见区域宽:
document.body.offsetWidth
(包括边线的宽);
网页可见区域高:
document.body.offsetHeight
(包括边线的宽);
网页正文全文宽:
document.body.scrollWidth;
网页正文全文高:
document.body.scrollHeight;
网页被卷去的高:
document.body.scrollTop;
网页被卷去的左:
document.body.scrollLeft;
网页正文部分上:
window.screenTop;
网页正文部分左:
window.screenLeft;
屏幕分辨率的高:
window.screen.height;
屏幕分辨率的宽:
window.screen.width;
屏幕可用工作区高度:
window.screen.availHeight;
屏幕可用工作区宽度:
window.screen.availWidth;
OK, its here!
https://developer.apple.com/library/safari/documentation/AppleApplicat...
"The default width is 980px"