以下是我在js文件中写的javascript:
var ele = document.getElementsByTagName('body');
var p = document.getElementById('hello');
ele[0].innerHTML= p.innerHTML;
但它给出了p为空的错误。 但是当我在控制台中运行相同的命令时,它们完美地工作。 有人可以帮我解决这个问题。
答案 0 :(得分:2)
正如用户所建议的,它是关于在运行JS时是否呈现DOM。你有2个选择。
<head>
中的脚本时,请务必将其打包在onload
中,请参阅下面的示例在<body>
中链接脚本时,您无需将其包装在onload
// example
window.onload = function(){ // or better use window.addEventListener
// do some stuff or paste your code here
}