element.addEventListener(
event,
function,
useCapture) 方法用於向指定元素添加事件句柄。
event: 必須。字符串,指定事件名。
注意: 例 使用 "click" ,而不是使用 "onclick"。
注意: 例 使用 "click" ,而不是使用 "onclick"。
function: 觸發函數
useCapture: 可選。布爾值,指定事件是否在捕獲或冒泡階段執行。
可能值:
- true - 事件句柄在捕獲階段執行
- false- 默認false。事件句柄在冒泡階段執行
使用 removeEventListener(event, function) 方法來移除 addEventListener() 方法添加的事件句柄。
重點:此方法不兼容IE8及更早版本瀏覽器
element.attachEvent(event, function,)方法用於向指定元素添加事件句柄。
使用detachEvent(event, function)方法來移除 attachEvent() 方法添加的事件句柄。
重點:此方法只支持IE8以及更早版本瀏覽器,參數event 必須是"onclick"與addEventListener不同,
並且相對於addEventListener少了一個參數,此方法只支持事件句柄在冒泡階段執行
在使用時,需要兼容各個瀏覽器版本,下面進行函數封裝
function addEvent(obj,type,func){ if(obj.addEventListener){ obj.addEventListener(type,func,false);//默認false可省略 }else{ obj.attachEvent("on"+type,func); } } function removeEvent(obj,type,func){ if(obj.removeEventListener){ obj.addEventListener(type,func,false);//默認false可省略 }else{ obj.detachEvent("on"+type,func); } }
封裝完畢,不過此方法只支持事件句柄在冒泡階段執行