1.html中直接绑定
html中绑定事件叫做内联绑定事件,不利于分离。
<input type="button" value="click me" onclick="show(this,type,event)">
2.js中直接绑定
js中直接绑定称为赋值绑定函数,缺点是只能绑定一次。
window.onload =function(){
console.log("onload事件执行...");
var oBtn = document.getElementById('btn1');
oBtn.onclick =function(){
console.log('btn1的点击事件被触发...');
}
3.addEventListener监听事件
target.addEventListener('click',function(){
console.log('btn1的点击监听事件被触发');
})
target表示要监听事件的目标对象,可以是一个文档上的元素DOM本身,Window或者XMLHttpRequest type表示事件类型的字符串 listener为当指定的事件类型发生时被通知到的一个对象 useCapture为设置事件的捕获或者冒泡 true为捕获,false为 冒泡(默认) addEventListener可以给同一个dom元素绑定多个函数,并且执行顺序按照绑定顺序执行,且执行顺序与useCapture无关 给一个dom元素绑定同一个函数,最多只能绑定useCapture类型不同的两次 addEventListener只支持到IE9,为兼容性考虑,在兼容IE8及一下浏览器可以