事件的系結
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
window.onload=function(){
var btn01=document.getElementById("btn01");
/*
使用物件.事件=函式 的形式系結回應函式
她只能同時為一個元素的一個事件系結一個回應事件
*/
// btn01.onclick=function(){
// alert("123");
// }
// addEventListener(); 通過這個方法 也可以為元素系結事件
/*
引數
1.事件的字串,不要on
2.回掉函式,當事件觸發時該函式會被呼叫
3.是否在捕獲階段觸發事件,需要一個布林值,一般都傳false
*/
// btn01.addEventListener("click",function(){alert(1);},false);
// btn01.addEventListener("click",function(){alert(2);},false);
/*
attachEcent()
- 在IE8中可以使用attachEvent()來系結事件
- 引數
1.事件的字串,要on
2.回呼函式
可以同時為一個事件系結多個處理函式
不同的是他是后系結先執行,執行順序和addEventListener()相反
*/
bind(btn01,"click",function(){
alert(this);
})
}
// 定義一個函式,用來為指定元素系結回應函式?
// addEventListener()中的this,是系結事件的物件?
// attachEvent()中的this,是window
/*
引數
obj 要系結事件的字串
eventStr 事件的字串
callback 回呼函式
*/
function bind(obj,eventStr,callback){
if(obj.addEventListener){
// 大部分瀏覽器兼容的方式
obj.addEventListener(eventStr,callback,false);
}else{
/*
this是誰由呼叫方式決定的
callbank.call(obj)
*/
// IE8及以下
obj.attachEvent("on"+eventStr,function(){
// 在匿名函式中呼叫回掉函式
callback.call(obj);
});
}
}
</script>
</head>
<body>
<button type="button" id="btn01">btn01</button>
</body>
</html>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/162072.html
標籤:JavaScript
上一篇:大資料集報表點擊表頭排序
下一篇:事件的傳播
