HTML body 的范围是什么?

What's the scope of HTML body?

我在学习Javascript。

<input type="button" onclick="addP();"> 

这条线有效fine.Can我像这样向主体添加点击事件?

<body onclick="addP();">

当我点击时,我没有任何显示 up.But 如果我向 body 添加宽度和高度,它就成功了!但只是在有限的范围内。 如果添加背景颜色,它将覆盖所有 window。颜色表示window的范围,但不可点击(不知道有没有'clickable'这个词,希望大家理解)。 我不能投票,因为我的声誉不佳 enough.I 稍后会投票……

尝试完全扩展 body

document.getElementsByTagName('body')[0].style.height = '100%';
document.getElementsByTagName('body')[0].style.width = '100%';

在文档加载时立即触发,或者如果您知道 CSS,请使用该等价物。

由于没有完整的示例,这里是我将 htmlbody 标签设置为 100% 宽度和高度的示例,这使得它可以在屏幕上的任何地方点击。

然后,我使用 EventTarget.addEventListener() 而不是内联事件处理程序(例如 onclick=''),后者在大多数情况下使用起来更好。

最后,我使用 document.createElement() DOM method, add text to it, then append it to the document.body element with Node.appendChild().

创建 p 元素(我假设您的 addP() 函数正在执行)

请记住,在实践中,您通常不想向 body 元素添加诸如单击处理程序或鼠标事件处理程序之类的东西,因为它会在页面上的任何这些事件上触发.相反,使用作为元素父元素的元素,或 document.addEventListener().

<!doctype html>
<html>
<head>
<title></title>
<style>
html, body {
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
}
</style>
<script>
window.addEventListener('load', function ol(){
    document.body.addEventListener('click', function cl(){
        var p = document.createElement('p');

        p.textContent = 'Hello World!';

        document.body.appendChild(p);
    });
});
</script>
</head>
<body>
</body>
</html>

http://jsfiddle.net/m3ssssvp/2/