| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2338 人关注过本帖
标题:一个困了很久的问题:attachEvent & detachEvent & this
取消只看楼主 加入收藏
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
一个困了很久的问题:attachEvent & detachEvent & this
function aa()
{
   this.nodeName;
}
XXX.attachEvent('click',aa);
怎么在attachEvent中的事件aa中的this指向XXX本身?并且要能在detachEvent中能删除相应的方法。(注意这条件)

好像这是一个大难道,自己重写一个方法就不用回复了,因为有要求,所以才有挑战性。

各位有什么好的招不?
搜索更多相关主题的帖子: attachEvent detachEvent 
2010-12-07 16:41
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用gulimeksoft在2010-12-7 17:38:12的发言:

参考
这是哪跟哪了,这是jquery,而且和“原生态”的js不一样的。好不。

世事如潮我如水,只叹江湖几人回。
2010-12-08 09:15
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用aspic在2010-12-8 10:23:11的发言:

 
 
function aa(){
    alert(this.id)
}
var obj = document.getElementById("btnOK");
if(obj.attachEvent){
    obj.attachEvent('onclick', (function(){
        return function(){
            aa.call(obj)   
        }                                    
    })(obj))
}
这个我自然知道,但你看我提问的红色字部份了没?

世事如潮我如水,只叹江湖几人回。
2010-12-08 10:26
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用aspic在2010-12-8 10:08:12的发言:

如果你觉得不用写方法就可以 那么估计你得自己写js引擎了
此言差矣。那是一种追求,自己绕来绕去的建一种,我相信很多人都会,但要在原attachEvent上改进,我想可能就没人会了。追求,懂不?

世事如潮我如水,只叹江湖几人回。
2010-12-08 10:33
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用aspic在2010-12-8 10:35:08的发言:

你去51js问问吧 这里没有适合你的
这里没有合适的,51js就有合适的吗?我就不信那邪了。

世事如潮我如水,只叹江湖几人回。
2010-12-08 10:37
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用aspic在2010-12-8 10:36:21的发言:

既然没有人会为什么你还来这里问呢?
一人技短,两人技长。你懂不懂的。

世事如潮我如水,只叹江湖几人回。
2010-12-08 10:37
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
...

[ 本帖最后由 hugeannex 于 2010-12-16 20:50 编辑 ]

世事如潮我如水,只叹江湖几人回。
2010-12-16 17:03
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
以下是引用foktime在2010-12-24 08:36:15的发言:

https://bbs.bccn.net/thread-329762-1-1.html

那个博主给你的帖子
看了,只能点一次,达不到我所说的要求。
我也能做出我所想要的结果,但弯捌得有点大,所以想看看有没有更好的。
还是谢谢关注。

世事如潮我如水,只叹江湖几人回。
2010-12-24 09:31
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
再认真看了一下,发现我上面说错了,效果是实现了,不过劫持了原js的方法,所以不符合“自己重写一个方法就不用回复了”。

世事如潮我如水,只叹江湖几人回。
2010-12-24 09:48
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:483
专家分:911
注 册:2005-3-20
收藏
得分:0 
他劫持了原有的document.getElementById()方法和document.createElement()方法。
鄙人认为,内置函数要比自定义的执行快得多,所以不赞成劫持内置函数。

后话:不过我想到比较好的解决方法了。呵呵。关门补觉去了……

世事如潮我如水,只叹江湖几人回。
2010-12-24 11:03
快速回复:一个困了很久的问题:attachEvent & detachEvent & this
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016988 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved