Javascript 清除现有iframe内容
我有一份文件清单。当我点击它们时,内容显示在一个框架内。我遇到的问题是:当我打开一个文件并移动到下一个文件时(如果文件的大小更大,则加载需要一些时间),旧文件的内容仍然显示在iframe中。一旦我点击下一个文件,我想清除iframe中旧文件的内容,同时它正在加载,我可以显示一个加载指示器 为了清除iframe中的内容,我尝试了一些方法,但没有成功。你能给我一些建议吗 我的HTMLJavascript 清除现有iframe内容,javascript,iframe,Javascript,Iframe,我有一份文件清单。当我点击它们时,内容显示在一个框架内。我遇到的问题是:当我打开一个文件并移动到下一个文件时(如果文件的大小更大,则加载需要一些时间),旧文件的内容仍然显示在iframe中。一旦我点击下一个文件,我想清除iframe中旧文件的内容,同时它正在加载,我可以显示一个加载指示器 为了清除iframe中的内容,我尝试了一些方法,但没有成功。你能给我一些建议吗 我的HTML <div id="result"> <div style="overflow: auto;" i
<div id="result">
<div style="overflow: auto;" id="testIframeBox">
<iframe id="testiframe" name="testIframe" onload="">iFramenot supported</iframe></div>
</div>
要清除内容:
if(document.getElementById('testiframe'))
{
var frame = document.getElementById("testIframe"),
frameDoc = frame.contentDocument || frame.contentWindow.document;
frameDoc.documentElement.innerHTML="";
}
window.frames['testIframe'].location.replace('div class="loading-animation"></div>');
此外,在填充内容之前,我尝试用加载指示器替换内容:
if(document.getElementById('testiframe'))
{
var frame = document.getElementById("testIframe"),
frameDoc = frame.contentDocument || frame.contentWindow.document;
frameDoc.documentElement.innerHTML="";
}
window.frames['testIframe'].location.replace('div class="loading-animation"></div>');
window.frames['testIframe'].location.replace('div class=“loading animation”>');
据我所知,您的问题分为两部分:
iframe
的src
属性来控制其内容。普遍接受的做法是将about:blank
分配给src
,使其加载浏览器的默认空白文档
contentDocument
仅当您在iframe
中加载的文档位于同一域时才应使用,否则跨域安全性会阻止您的尝试