function AttachEvent(type, target, handler, owner)
{
var eventHandler = handler;
if(owner)
{
// 在这里重新定义一个处理函数
eventHander = function(e)
{
handler.call(owner, e);
}
}
if(window.document.all)
target.attachEvent("on" + type, eventHander );
else
target.addEventListener(type, eventHander, false); //注意这里第一个参数是click而不是onclick
}
这段代码 是我从网上看到的 虽然不是很明白 但一直用着挺好用的可是最近遇到个问题,在用这个方法对对象进行绑定事件之后,在解除事件时 就遇到问题了,个人理解是 在绑定时 由于我都传入了owner这个参数 于是他又对事件进行了 处理 这样绑定上的并不是 传入的那个handler于是乎解除时变失灵了哪位告示指点一下小弟呀 我想要的结果是 用这个绑定事件 并能有对应的解除事件方法
谢谢了
{
var eventHandler = handler;
if(owner)
{
// 在这里重新定义一个处理函数
eventHander = function(e)
{
handler.call(owner, e);
}
}
if(window.document.all)
target.attachEvent("on" + type, eventHander );
else
target.addEventListener(type, eventHander, false); //注意这里第一个参数是click而不是onclick
}
这段代码 是我从网上看到的 虽然不是很明白 但一直用着挺好用的可是最近遇到个问题,在用这个方法对对象进行绑定事件之后,在解除事件时 就遇到问题了,个人理解是 在绑定时 由于我都传入了owner这个参数 于是他又对事件进行了 处理 这样绑定上的并不是 传入的那个handler于是乎解除时变失灵了哪位告示指点一下小弟呀 我想要的结果是 用这个绑定事件 并能有对应的解除事件方法
谢谢了
解决方案 »
- 如何弹出当前点击的内容
- 鼠标放在anchor上,如何知道它的最右边位置
- 关于JS里的正则
- 验证码JS刷新的问题。。。
- ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●哪些对象有item属性啊????这句话啥意思啊????
- Javascript 操作文本文件
- javascript 特效网站
- 如何在javascript的onclick事件中写关闭当前窗口的脚本?
- 初学JavaScript,帮忙推荐一本书
- 我写的文字移动定位程序,有问题!请指点!
- jquery怎么移除不了事件呢?
- vbscript里定义的字符串变量传给JavaScript,怎么不行啊
{
var eventHandler = handler;
if(owner)
{
// 在这里重新定义一个处理函数
eventHander = function(e)
{
handler.call(owner, e);
}
}
if(window.document.all)
target.attachEvent("on" + type, eventHander );
else
target.addEventListener(type, eventHander, false); //注意这里第一个参数是click而不是onclick
return(eventHander);
}
var re=AttachEvent('click',document.body,function() {alert("") },1);
document.body.detachEvent('onclick',re);
var r2=AttachEvent('click',document.body,function() {alert("b") },1);
document.body.detachEvent('onclick',r1);
document.body.detachEvent('onclick',r2);
不过要保存每个添加的事件返回的eventHander
document.getElementById("test").onclick = null;
if(window.document.all)
target.attachEvent("on" + type, eventHander );
else
target.addEventListener(type, eventHander, false);这段函数本来就是用来区分ie和ff等浏览器进行分别处理的,还用google么另外=null不能取出attachEvent addEventListener添加的函数