Ms和W3c中事件注册中的this问题
Ms中的事件注册:
|
1
|
ele.attachEvent('on' + type, fnHandler) |
W3c中事件注册:
|
1
|
ele.addEventListener(type, fnHandler, false) |
有时我们要在事件注册的函数引用里,引用调用该事件监听器的当前对象
如果是W3c可以直接用this,形如:
|
1
2
3
|
function fnHandler(){ console.log(this);} |
fnHandler中的this就相当于ele了
但是在IE中是不行的。兼容的获取目标对象的方法是:
|
1
2
3
4
|
function fnHandler(e){ var target = e.target || e.srcElement; console.log(target);} |
这时fnHandler中的target就相当于ele
浙公网安备 33010602011771号