按钮 onclick 的奇怪行为可能是由于以下几个原因导致的:
示例:
var globalVariable = 'Hello';
function handleClick() {
console.log(globalVariable);
}
document.getElementById('myButton').onclick = handleClick;
event.stopPropagation()
方法停止事件冒泡。示例:
function handleClick(event) {
event.stopPropagation();
console.log('Button clicked');
}
document.getElementById('myButton').onclick = handleClick;
function handleParentClick() {
console.log('Parent clicked');
}
document.getElementById('parentElement').onclick = handleParentClick;
示例:
var obj = {
name: 'John',
handleClick: function() {
console.log(this.name);
}
};
document.getElementById('myButton').onclick = obj.handleClick.bind(obj);
通过检查以上可能的原因,您应该能够解决按钮 onclick 的奇怪行为。