Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过js编程使用iframe的onload?_Javascript_Events_Iframe_Png_Onload - Fatal编程技术网

Javascript 如何通过js编程使用iframe的onload?

Javascript 如何通过js编程使用iframe的onload?,javascript,events,iframe,png,onload,Javascript,Events,Iframe,Png,Onload,我用js创建了这个iframe,这是我到目前为止的代码: <script> function loadIframe(url) { ifr = document.createElement("IFRAME"); ifr.setAttribute("src", url); ifr.style.width = "800px"; ifr.style.height = "600px"; document.body.appendChild(ifr);

我用js创建了这个iframe,这是我到目前为止的代码:

<script>
function loadIframe(url) {
    ifr = document.createElement("IFRAME");
    ifr.setAttribute("src", url);
    ifr.style.width = "800px";
    ifr.style.height = "600px";
    document.body.appendChild(ifr);
    ifr.onload = ready();
} 

function ready() { alert("ready") };

window.onload = function () {
    loadIframe("http://www.wallpaperpimper.com/wallpaper/Landscape/Ocean/Big-wave-1-S79KZQKBWP-1600x1200.jpg");
}
</script>
iframe已创建,但ready函数在iframe加载内容之前启动,我主要想做的是:

<iframe onload="ready()" src="http://www.wallpaperpimper.com/wallpaper/Landscape/Ocean/Big-wave-1-S79KZQKBWP-1600x1200.jpg"></iframe>
这很好,一旦加载了iframe内容,ready函数就会启动,但我想从js完成这一切

我不能在加载到iframe的页面的正文中使用onload,因为我不拥有它们

如何设置onload事件?

执行以下操作:

ifr.onload = ready();
您正在执行ready函数并将结果分配给irf.onload,而不是将ready函数的引用分配给onload属性。所以我想你想做的是:

ifr.onload = ready;

因此,将ready函数的引用分配给onload属性,而不是执行它。

为什么要生成图像?为什么不使用一个?那么你就不会有任何关于onload的问题了。@Matthew Scharley:我使用这个图像是因为它的尺寸很大,所以我可以确定ready函数在内容加载之前启动,这是我不希望它做的。我希望它在加载内容后立即启动。