gpt4 book ai didi

javascript - 如何检查 iframe 是否已加载或是否包含内容?

转载 作者:IT王子 更新时间:2023-10-29 02:51:35 25 4
gpt4 key购买 nike

我有一个带有 id = "myIframe"的 iframe,这里是我加载它的内容的代码:

$('#myIframe').attr("src", "my_url");

问题是有时加载时间太长,有时加载速度很快。所以我必须使用“setTimeout”函数:

setTimeout(function(){
if (//something shows iframe is loaded or has content)
{
//my code
}
else
{
$('#myIframe').attr("src",""); //stop loading content
}
},5000);

我只想知道如何确定 iFrame 是否已加载或是否包含内容。使用 iframe.contents().find() 将不起作用。我不能使用 iframe.load(function(){})

最佳答案

试试这个。

<script>
function checkIframeLoaded() {
// Get a handle to the iframe element
var iframe = document.getElementById('i_frame');
var iframeDoc = iframe.contentDocument || iframe.contentWindow.document;

// Check if loading is complete
if ( iframeDoc.readyState == 'complete' ) {
//iframe.contentWindow.alert("Hello");
iframe.contentWindow.onload = function(){
alert("I am loaded");
};
// The loading is complete, call the function we want executed once the iframe is loaded
afterLoading();
return;
}

// If we are here, it is not loaded. Set things up so we check the status again in 100 milliseconds
window.setTimeout(checkIframeLoaded, 100);
}

function afterLoading(){
alert("I am here");
}
</script>

<body onload="checkIframeLoaded();">

关于javascript - 如何检查 iframe 是否已加载或是否包含内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9249680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com