我正在开发一个项目,其中页面是通过使用jquery动态生成的对象加载的。这是一个iPad项目。
当用户完成页面时,会调用从dom中删除对象。使用类似$('#objectName')的东西.remove();在ipad上崩溃了。这不会发生在桌面浏览器上。我尝试使用iframe但结果是一样的。
如何在没有iPad崩溃的情况下移除对象?
我尝试将对象包装在div中并删除或隐藏该div但结果却很奇怪。当我删除div并隐藏div仍然使对象可见时,它仍会崩溃。
感谢您的帮助!
答案 0 :(得分:1)
我知道这是一个非常古老的主题,但对于碰到这个问题的人我有解决问题的方法:
对我来说,问题只出现在我尝试从DOM中删除一个带有iframe的对象时。
要修复它,我首先尝试将iframe的src设置为空(!)从DOM中删除元素,如下所示:
$('div.lightbox iframe').attr('src','');
这并没有完全解决问题,它有效,但是当我从DOM中删除元素时,iframe内容仍在加载的情况下(我正在加载灯箱元素中的内容,并关闭灯箱) (因此从DOM中删除了元素)它仍然使浏览器崩溃。
我通过将要删除的元素的HTML设置为空来完全解决了这个问题,在(!)从DOM中删除元素之前再次这样:
$('div.lightbox').html('');
所以这里,最终解决方案:
$("div.lightbox").fadeOut(500, function(){
$('div.lightbox iframe').attr('src','');
$('div.lightbox').html('');
}).remove();