为什么addEventListener for load事件不能与div一起使用?

时间:2016-08-12 21:39:12

标签: javascript

sampleRate添加事件监听器时,我不能像使用click事件那样使用函数文字。为什么我不能像我点击事件一样使用函数文字?

load

2 个答案:

答案 0 :(得分:1)

load事件触发加载外部内容的元素,例如imgiframe等。

事实是load事件可能不会在声明事件之前触发内容加载。因此,如果您希望load事件有效,则需要在srchref之前声明它。

声明div后,它已经加载了。因此,在div

中触发此类事件是不可能的

如果您想知道div,包括img等已加载的元素,则必须为每个元素声明load事件,即:

var loaded = 0;

var images = div.getElementsByTagName("img"),
    len = images.length;

function imgload() {
    if(++loaded > len) {
        console.log("Div loaded.");
    }
}

for(var i = 0, img; img = images[i]; i++) img.addEventListener("load", loaded);

答案 1 :(得分:0)

为load事件添加JS代码时。 div的负载已经完成。因此永远不会触发load事件。点击有效,因为它会在用户点击它时显示。 阅读本文以便更好地理解。

https://developer.mozilla.org/en-US/docs/Web/Events/load