<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script>
window.onload = function(){
var mybox = document.getElementsByTagName("li");
document.write('<xmp>'+mybox[0].innerHTML+'</xmp>');
alert(mybox[0].innerHTML);
console.log(mybox[0].innerHTML);
}
</script>
</head>
<body>
<ul id="box">
<li><img src="image/i1.png" alt=""></li>
<li><img src="image/i2.png" alt=""></li>
<li><img src="image/i3.png" alt=""></li>
</ul>
</body>
</html>
我发现
window.onload = function(){
var mybox = document.getElementsByTagName("li");
document.write('<xmp>'+mybox[0].innerHTML+'</xmp>');
alert(mybox[0].innerHTML);
console.log(mybox[0].innerHTML);
}
里面的三句话:
document.write('<xmp>'+mybox[0].innerHTML+'</xmp>');
alert(mybox[0].innerHTML);
console.log(mybox[0].innerHTML);
只有一句可以执行
document.write('<xmp>'+mybox[0].innerHTML+'</xmp>');
为何执行完 document.write('<xmp>'+mybox[0].innerHTML+'</xmp>');
后面的两句不执行了?
alert(mybox[0].innerHTML);
console.log(mybox[0].innerHTML);
你在window.onload里执行document.write,会导致整个页面被覆盖,所有的DOM元素都不存在了,所以下面的 mybox[0]根本就找不到了,报异常退出了。