如何在不加載空白頁面的情況下使用javascript清除我的IFRAME元素的內容?如何清除IFRAME的內容?
我可以想辦法做到這一點:iframe_element.src = "blank.html"
,但必須有一個更好的,即時的方法。
如何在不加載空白頁面的情況下使用javascript清除我的IFRAME元素的內容?如何清除IFRAME的內容?
我可以想辦法做到這一點:iframe_element.src = "blank.html"
,但必須有一個更好的,即時的方法。
about:blank
是空白的「URL」。它始終清晰
您可以設置頁面的來源,它會清除。
我在使用許多IFrame的頁面上遇到了「about:blank」的問題。它似乎並不是每個瀏覽器中的有效位置(儘管我從來沒有發現過)。無論如何,我很高興與javascript:void(0);
如果Javascript被禁用,會發生什麼情況? – AnthonyWJones 2009-11-23 18:36:18
他特別要求如何在Javascript之後重置IFrame位置。雖然我認爲JavaScript:優雅地降級,但我不確定。 – 2009-11-23 18:41:13
你的技術是最強大的。它是我自己使用的那個。有時,內容可能通過HTTPS傳遞,使用about:blank可能會導致警告消息出現「您要包含來自不安全位置的內容」或其他類似內容的效果。
即時的事情是一個知覺問題,但是如果您的站點上有一個Blank.html文件,並且配置了長緩存過期,則客戶端將只訪問一次頁面(每個會話最多一次)。
你也可以這樣做:
<html>
<head>
<script>
var doc = null;
window.onload = function() {
alert("Filling IFrame");
doc = document.getElementById("test");
if(doc.document) {
document.test.document.body.innerHTML = "<h1>test</h1>"; //Chrome, IE
}else {
doc.contentDocument.body.innerHTML = "<h1>test</h1>"; //FireFox
}
setTimeout(function() {
alert("Clearing IFrame");
if(doc.document) {
document.test.document.body.innerHTML = ""; //Chrome, IE
}else {
doc.contentDocument.body.innerHTML = ""; //FireFox
}
}, 1000);
};
</script>
</head>
<body>
<iframe id="test" name="test">
</iframe>
</body>
</html>
或者,你可以這樣做:。
var iframe_element = window.frames['iframe_name'];
iframe_element.document.open();
iframe_element.document.close();
如果您希望向窗口添加基本信息(或曾經),也可以在文檔打開時寫入文檔。 – Trisped 2012-08-09 01:04:23
function getContentFromIframe(iFrameName)
{
var myIFrame = document.getElementById(iFrameName);
var content = myIFrame.contentWindow.document.body.innerHTML;
//Do whatever you need with the content
}
$( 「#IFRAME」)的內容()找到( 「身體」 )。html的( '');
這不提供問題的答案。要批評或要求作者澄清,在他們的帖子下留下評論 - 你總是可以評論你自己的帖子,一旦你有足夠的[聲譽](http://stackoverflow.com/help/whats-reputation),你會能夠[評論任何帖子](http://stackoverflow.com/help/privileges/comment)。 – 2013-08-11 07:04:10
如果它最初是從與包含頁面相同的域加載的,您也只能修改iframe的內容。 – 2015-11-22 09:04:03
@PeterL。雖然我同意這個答案太簡潔而且有用,但從技術上講,它的確回答了OP,因爲'jQuery' _is_'JavaScript'。 – 2016-06-21 15:51:56
var iframe = document.getElementById("myiframe");
var html = "";
iframe.contentWindow.document.open();
iframe.contentWindow.document.write(html);
iframe.contentWindow.document.close();
在IE,Firefox和Chrome測試...它做到了:)
剛剛得到的iFrame和從中取出documentElement。 Iframe將是空白的
var frame = document.getElementById("YourFrameId"),
frameDoc = frame.contentDocument || frame.contentWindow.document;
frameDoc.removeChild(frameDoc.documentElement);
//首先,我從它的Id中獲得窗口。
var my_content = document.getElementById('my_iframe').contentWindow.document;
//然後我通過將body標籤的內部HTML設置爲空字符串來清除它。
my_content.body.innerHTML="";
//現在,當我編寫我的新內容時,它不會追加到主體的尾部,而iframe主體將只包含新鮮內容。
my_content.write(new_content);
你可以給我舉例..我該怎麼辦呢.. – sikender 2009-11-23 18:34:19
iframe_element.src =「有關:空白」? – 2009-11-23 18:38:47
這是非常好的。 ty – ahoo 2013-07-07 09:51:40