onclick 事件 - 为什么 Javascript 在加载上运行它
onclick event - why Javascript runs it onload
<p id="specialp">some content</p>
<script>
document.getElementById('specialp').onclick=alert('clicked');
</script>
我刚刚开始使用 Javascript,我不明白为什么在页面加载时执行警报,而不是在我单击该段落时执行警报。
处理程序在我将其内联时按我的预期工作,如下所示:
<p id="specialp" onclick="alert('clicked')" >some content</p>
这是因为您没有将onclick
赋值包装为实际函数,因此它会尝试将alert('clicked')
的结果分配给 onclick 事件处理程序(这意味着它在分配时可能undefined
)。您需要做的是为该处理程序分配一个函数,如下所示:
document.getElementById('specialp').onclick = function()
{
alert('clicked');
};
当你在HTML中做同样的事情时,DOM会自动将内容包装在一个函数中。
相关文章:
- 如何在运行时在angular 2中加载外部js脚本
- 如何在加载网页时运行脚本
- 为什么我的javascript脚本在页面加载时运行,而不是使用onclick
- 如何在加载角度函数后运行jQuery代码
- 如何使用特定的javascript函数创建一个url,以便在加载页面时运行
- Javascript - 加载函数运行时未定义的变量
- HTML/JS github页面项目没有't在使用firefox运行时加载图像或声音
- 如何让C#代码在页面加载时运行的jquery脚本之后运行
- 有没有一种方法可以在服务器端页面加载之前在加载时运行javascript
- 如何在内部脚本完全加载后运行脚本
- 在不加载页面的情况下运行javascript
- 在运行时加载knockout.jslib
- Jquery脚本未在运行时加载编辑:意外的令牌
- Javascript:如何在页面重新加载后运行函数
- 在页面加载完成之前,使用URL参数运行JavaScript
- 无法使用javascript插件在首次运行时加载实际图像大小(图像在刷新后加载)
- 如何更改javascript的一个变量,然后运行;“加载”;而无需重新加载页面
- Jquery代码获胜'不是从页脚加载运行,而是从控制台运行
- 为什么 Ghost.py 不加载/运行我的Javascript
- 点击加载/运行此代码