<!DOCTYPE html>
<html>
<head>
<!-- some meta tags here -->
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0">
<!-- loading some css, js files here -->
</head>
<body>
<!-- contents here -->
<script>
window.addEventListener("load",function(){
// page setup here
console.log(window.innerWidth);
}, false);
</script>
</body>
</html>
我的HTML基本上是这样的。我注意到一个奇怪的问题只出现在我的iPhone5c / 5s上的iOS9.2 Safari中(我没有任何其他版本,但它从未在Android和PC浏览器中出现),因为JavaScript创建的一些元素没有显示,并且它随机发生(概率大约是五次重载中的一次)。
使用Web Inspector我发现当window.innerWidth返回错误的值时,元素的宽度变为零,特别是1280,即使320是正确的值。我多次重新加载页面并确认问题是由于这种随机现象而发生的。
我想这是加载页面并反映视口设置和执行JavaScript的时间问题。是否有一些可能相关的iOS错误,我应该关心?有没有解决方法?