我在哪里做错了? 为什么这段javascript代码不起作用?
这一定很容易,但我不知道为什么,我真的是这个新手
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to make a BUTTON element.</p>
<button onclick="myFunction()">Try it</button>
<script type="text/javascript">
function myFunction()
{
var bodyel = document.getElementById("body");
var block = document.createElement("div");
block.innerHTML = "whatever";
bodyel.appendChild(block);
};
</script>
</body>
</html>
答案 0 :(得分:2)
您的<body>
元素根本没有“id”属性,更不用说其值为“body”的元素了。
你可以这样做:
<body id=body>
或者这个:
var bodyel = document.getElementsByTagName('body')[0];
或者只是:
var bodyel = document.body;
答案 1 :(得分:0)
不需要使用id
调用正文如果是,则必须添加该ID。
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to make a BUTTON element.</p>
<button onclick="myFunction()">Try it</button>
<script type="text/javascript">
function myFunction() {
var bodyel = document.body;
var block = document.createElement("div");
block.innerHTML = "whatever";
bodyel.appendChild(block)
}
</script>
</body>
</html>
答案 2 :(得分:0)
这是问题
var bodyel = document.getElementById("body"); //body is not id
您可以使用
getElementsByTagName('body')[0];
或
var b = document.body;
答案 3 :(得分:0)
更改行:
var bodyel = document.getElementById("body");
以下
var bodyel = document.body;
答案 4 :(得分:0)
您需要稍微更改一下代码: -
var bodyel = document.getElementsByTagName("body")[0];
休息会有效。看看这个fiddle。另请尝试查看document-body-appendchildi