如何临时从网页中删除iframe,然后在不重新下载iframe内容的情况下添加iframe?

时间:2015-03-18 02:26:28

标签: javascript jquery performance iframe detach

我有一个包含一些IFrame的页面。这些IFrame位于同一个域中。我想在打开模态窗口时从页面中删除iframe内容,以减少模态窗口中的滞后。

然后,当我关闭模态窗口时,我希望将IFrame重新连接到页面。

问题是,当我重新附加IFrame时,我尝试重新下载IFrame的每种方法。我不确定是否有可能这样做。

作为一个例子,jQuery有一个分离方法,不应该要求你再次下载内容,但这不起作用。

var detatchWidgets =  $container.find("iframe");

detatchWidgets.detach();

msgDialog.on('hidden.bs.modal', function(){
    $container.append(detatchWidgets);    
});

1 个答案:

答案 0 :(得分:2)

首先,抱歉,如果我想念你。 只是为了测试我创建了2个JSFIDDLE:

1)我用作iframe的src,它在iframe加载后提醒2秒

https://jsfiddle.net/hr97240j/10/

setTimeout(function(){
    alert("loaded and iframe says hello");
},2000);

2)这是一个嵌入iframe的页面。

https://jsfiddle.net/hr97240j/12/

在第二个我显示iframe,然后隐藏它,3秒后我再次显示它,我可以说,iframe的src不会再次重新加载! 我在第一次加载时看到iframe的内容没有任何新警报。