索引.html
<html>
<head>
<script type="text/javascript" src="foo.js"></script>
<script type="text/javascript">
window.onload = function() {
console.log("hello from html");
};
</script>
</head>
<body>
<div class="bar">bar</div>
</body>
</html>
foo.js
// this js file will be completely ignored with window.onload
//window.onload = function() {
console.log("hello from external js");
var bar = document.getElementsByClassName("bar");
// this returns 0 instead of 1
console.log(bar.length);
//};
- 当
window.onload
在 html 中使用时,window.onload
来自外部的 js 将被忽略。 - 当
window.onload
从外部 js 被注释掉时,bar.length
返回 0。 - 当
window.onload
从 html 被删除时,window.onload
从外部 js 工作正常。
谁能解释为什么我不能同时使用两者window.onload
?
如果我必须在 html 中使用window.onload
,如何判断窗口是否是从外部 js 加载的?