【发布时间】:2012-07-27 15:02:10
【问题描述】:
有没有人遇到过 iOS Safari 的问题,当移除的元素($("some-selector").html("")、$("some-selector").innerHTML)仍然显示在移动 Safari 中?
iWebinspector 只显示 DOM 树中的新元素,将容器输出到控制台也表明应该只显示新内容。
不知道它有多有用——但似乎旧元素是可滚动的,但不可点击。非常奇怪的故障。
在 iPad 2(不是我的,我认为是 5.1)、iPhone 4 iOS 5.1、iOS 5.1 iPad 模拟器上测试。
谢谢!
更新
移除容器本身解决了这个问题。所以我建议你如果遇到同样的问题,只需删除容器并重新添加它。
【问题讨论】:
-
当包含 iframe 的 div 被隐藏但未删除导致滚动/单击停止工作时,我在 iPad 上看到了这一点(iframe“足迹”阻止事件到达它下面的元素。删除 iframe完全解决了这个问题,滚动/点击再次起作用。这是特定于 iPad 的,因为运行 WebKit 的 PlayBook/Android 平板电脑没有任何问题。
-
感谢您的评论,斯昆利夫。实际上我正在使用 iframe ,但它是我在删除旧内容后添加的元素。被删除的是 div/tables,所以看起来有点不同。
-
您是否有机会在某处(此处或 pastebin 上)发布完整的示例?
-
sculiffe,要粘贴的代码行太多,无法理解完整的示例。实际上移除容器本身解决了这个问题。所以:1)
$("#content > table, #content > div").remove()(也 -.first().innerHTML,.html(''))不起作用; 2)$("content").remove()工作正常。删除后重新添加。
标签: javascript ios ios5 ios-simulator mobile-safari