我有以下HTML和Javascript代码,但Chrome无法允许我运行它,任何人都可以帮我修复它。 HTML代码是:
var myNodelist = document.getElementsByTagName("p");
document.getElementById("demo").innerHTML = "The innerHTML of the second paragraph is: " + myNodelist[1].innerHTML;
<p>Hello World!</p>
<p>The DOM is very useful!</p>
<p id="demo"></p>
Chrome的错误消息是:未捕获的TypeError:无法读取未定义的属性“innerHTML”
答案 0 :(得分:1)
最可能的问题是,您将JavaScript包含在HTML的标头中,并且在浏览器解析页面的其余部分之前它正在运行。所以DOM查找document.getElementById("demo")
返回undefined。将JavaScript移动到HTML文件的底部,或让它等到DOM完成渲染(请参阅What is the non-jQuery equivalent of '$(document).ready()'?)。