(注意:下面的更新 1-5)
我有一个基于 Twitter-Bootstrap 的响应式网页,页面的左上角有一个完全死掉的矩形区域,但仅在 Mobile Safari 上(我尚未在 Android 上测试过)。
死的,定义:
- 死区的各种按钮无法点击
- 在死区向上/向下滑动不会向上/向下滚动页面。
我添加了以下代码:
$('*').click(function(){
console.log($(this));
});
...当我激活移动 safari JS 控制台时,我注意到死区已经向上移动,等于控制台条的像素高度!. 即,死区缩小了。此外,控制台记录了所有点击,除了在死区执行的点击。
更新#1:
根据评论中的建议,我...
1)双重检查固定定位元素:
$('*').click(function() {
console.log('checking for fixed elements...');
$('*').each(function() {
if ($(this).css('position') == 'fixed') {
console.log($(this));
}
})
});
...原来我的 Bootstrap模态对话框在移动设备中都是固定位置。我删除了所有对话框,问题仍然存在。
2) 添加了以下 CSS 代码....
* { outline: 1px solid red; }
这是 iPhone 屏幕截图。(我后来在 Photoshop 中添加的蓝色框以近似死区)...
更新#2:好的,这太荒谬了。我开始从我的代码中删除一些东西。这就是我最终得到的结果,问题仍然存在!...
<html>
<head>
</head>
<body>
</body>
</html>
更新#3:这可能是一个 safari 错误,与我的网页无关。(见下面的更新#2)。我强制关闭了 safari,重新打开后问题就消失了。
更新#4:问题再次出现:(也许它毕竟是我的网页而不是野生动物园侥幸。但是,它似乎是随机发生的......强制关闭浏览器将修复它一段时间,直到它再次出现。
更新#5:一旦出现死区,导航到另一个网页后,死区仍然存在。