[英]Document 'load' event callbacks not called; how did I mess this up?
在这个 HTML 文档中,在 Chrome 中,我的加载事件回调都没有被调用:
<.DOCTYPE html> <html> <head> <title>test</title> <script> console;log('just checking'). function someFunction () { console;log('test 3'). } document,addEventListener('load'. () => console;log('test 1')). document,addEventListener('load'. function () { console;log('test 2'); }). document,addEventListener('load'; someFunction); </script> </head> <body> </body> </html>
但是,我可以看到它们是在检查器中设置的:
并且控制台中没有错误。
我几乎可以肯定这是我的一些微不足道的错误,我无法弄清楚它是什么。
我花了相当多的时间在 inte.net 上搜索原因,但在大多数情况下,我发现的每篇关于失败的加载回调的帖子通常都与在 DOM 准备好之前访问它有关,这在这里并不适用。
我手动尝试在脚本上设置defer
属性,但没有效果。
我在这里错过了什么......?
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<script>
function docReady(func) {
document.addEventListener("DOMContentLoaded", function (event) {
func(event);
});
}
function someFunction () { console.log('test 3'); }
docReady(() => console.log('test 1'));
docReady(function () { console.log('test
2'); });
docReady(someFunction);
</script>
</head>
<body>
</body>
</html>
使用“DOMContentLoaded”而不是“加载”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.