onclick事件 - 为什么要使用JavaScript运行它的onload(onclick eve

2019-09-16 19:28发布

<p id="specialp">some content</p>
<script>
document.getElementById('specialp').onclick=alert('clicked');
</script>

我刚开始使用JavaScript,为什么当我点击的那款被执行警报后页面加载,但不是我不明白。

该处理工程,我希望当我把它内联,就像这样:

<p id="specialp" onclick="alert('clicked')" >some content</p>

Answer 1:

这是因为你没有包裹onclick分配作为一个实际的功能,所以它尝试分配的结果alert('clicked')的onclick事件处理程序(这意味着它可能是undefined分配时)。 你需要做的是一个函数分配给该处理程序,如下所示:

document.getElementById('specialp').onclick = function()
{
    alert('clicked');
};

当你在HTML同样的事情,在DOM会自动包装在你函数的内容。



文章来源: onclick event - why javascript runs it onload