这是我的代码:
<html>
<head>
<script>
document.getElementById("id").onclick = function(){
alert();
}
</script>
</head>
<body>
<label id="id">A label</label>
</body>
</html>
这很简单,但我无法让它发挥作用。
当我在<script>
中复制代码并在控制台上运行它时,它运行得很好。
答案 0 :(得分:2)
onclick事件未触发,因为绑定click事件时该元素不存在(尚未加载DOM)。
要解决此问题,您可以在关闭body标签之前放置脚本(1) 或者将您的代码包装在DOM加载的事件中(2)。
1)
<html>
<head>
</head>
<body>
<label id="id">A label</label>
<script>
document.getElementById("id").onclick = function(){
alert();
}
</script>
</body>
</html>
2)
window.onload = function () {
document.getElementById("id").onclick = function(){
alert();
}
}