js实现onclick
实现 onclick 事件的 JavaScript 方法
内联事件处理
在 HTML 元素中直接添加 onclick 属性,值为 JavaScript 代码或函数调用:
<button onclick="alert('Clicked!')">点击</button>
<!-- 或调用函数 -->
<button onclick="handleClick()">点击</button>
<script>
function handleClick() {
console.log("函数被调用");
}
</script>
DOM 属性绑定
通过 JavaScript 获取 DOM 元素并为其 onclick 属性赋值:
const button = document.getElementById("myButton");
button.onclick = function() {
alert("通过 DOM 属性绑定触发");
};
// 或绑定已定义的函数
button.onclick = handleClick;
事件监听器(推荐)
使用 addEventListener 方法,支持多个监听器且更灵活:
const button = document.querySelector(".btn");
button.addEventListener("click", function() {
console.log("第一个监听器");
});
button.addEventListener("click", () => {
console.log("箭头函数监听器");
});
注意事项
- 事件冒泡:默认情况下事件会冒泡,可通过
event.stopPropagation()阻止。 this指向:在onclick属性或 DOM 属性绑定的函数中,this指向当前元素;箭头函数中this继承上下文。- 移除事件:使用
removeEventListener移除通过addEventListener添加的监听器。
示例:动态生成元素并绑定事件
document.body.innerHTML = '<div id="dynamicDiv">动态生成</div>';
const div = document.getElementById("dynamicDiv");
div.addEventListener("click", function() {
this.style.backgroundColor = "lightblue";
});






