"onload=foo(event)" 是什么意思?

What is meant by "onload=foo(event)"?

我是 JS 新手,发现这段代码:

<body>
    <span id="sp1">
        <img src="aurora.gif" onload="ev1(event)">
    </span>        
</body>

据我所知,如果整个 HTML 文档完成 "loading",就会触发 onload 属性 "loading"。
但我不太明白,什么是通过的如果 onload 属性被触发,则为 ev1 函数。在这种情况下,event 是什么?

Here为源码

img 也有 onload 属性 & 当图像完成加载时被调用。同样它也有 onerror 事件处理程序。 event代表事件对象。

function ev1(e) {
  console.log(e)
  console.log('Img loaded')

}
img {
  width: 200px;
  height: 200px;
}
<img src='https://i.redd.it/xbq78cnv2nr21.jpg' onload='ev1(event)'>

这似乎是试图将 Event 对象作为参数传递给名为 ev1 的函数。

作者 开发人员应该使用 JavaScript 事件,而不是使用内联事件,就像这样。

document.querySelector("img").addEventListener("load", event => {
  console.log(event);
});

祝你好运。

它将处理程序连接到图像的 load 事件,并将该事件的事件对象传递给处理程序。 event 对象可靠地存在于 cross-browser onload attribute-style 事件处理程序的上下文中:在 IE 上,它是全局的;在 Firefox 上,它是为 onload 处理程序创建的合成函数中的本地函数;在 Chrome 上,我认为是 。 :-)

请注意,ev1 函数必须是全局函数,这是不使用 onxyz-attribute-style 事件处理程序的众多原因之一。