javascript中如何查看对象的已经添加了的事件处理函数 兄弟姐妹们,在JavaScript怎样才能知道一个对象已经添加了哪些事件处理函数,能不能列出这些事件处理函数啊?答对者20分,吾将不胜感激!急啊!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比如一个div,有onmouseover,onmouseout,onclick等事件,遍历div的这些属性,如果为空就没有定义事件处理函数,否则就定义了 <html> <head> <title> </title> <script language="javascript"> function test(){ var div=document.getElementById("aaa"); if(!div.onclick){ alert("div.onclick") } if(!div.onmousedown){ alert("div.onmousedown") } if(!div.onmouseover){ alert("div.onmouseover") } } window.onload=function(){ test(); } </script> </head> <body> <div id="aaa" onclick="a()" onmousedown="b()"></div> </body></html> 我的意思是为某个对象的某个事件(如click事件)添加了多个事件处理函数,如何列出所有“这个对象的这个事件的这些事件处理函数”!<html><head><script language="javascript">var ttt=document.getElementById("ttt");if(ttt.addEventListener){ //Firefox ttt.addEventListener("click",a,false); ttt.addEventListener("click",b,false); ttt.addEventListener("click",c,false);}else{ //可恶的IE ttt.attachEvent("onclick",a); ttt.attachEvent("onclick",b); ttt.attachEvent("onclick",c);}function a(){ alert("a");}function b(){ alert("b");}function c(){ alert("c");}</script></head><body><div id="ttt">你好,世界!</div></body></html>我想知道的是如何才能列出ttt的click事件的所有事件响应函数(这里是a,b,c) 放到window.onload里面吧,这样肯定不行的ttt.onclick得到的应该是一个数组吧,可以为一个事件指定多个处理函数的 放到window.onload里ttt.onclick还是为null请楼上给出关键代码 有什么办法删除某个对象的某个事件所有的事件响应函数不?比如ttt的onclick事件响应函数(假设有多个,但我们不清除具体有多少个、都有哪些) 使用attachEvent或addEventListener方式绑定的事件处理函数是无法别枚举的,我之前写了一种事件绑定的方法,可以满足楼主的需求,可以参考一下:给DOM节点或组绑定事件http://www.jslab.org.cn/?tag=addEventListener <script src="core/Ext.js" type="text/javascript"></script><script src="adapter/ext-base.js" type="text/javascript"></script><script src="util/Observable.js" type="text/javascript"></script><script src="core/EventManager.js" type="text/javascript"></script><script src="core/Element.js" type="text/javascript"></script><script src="core/Fx.js" type="text/javascript"></script><script src="core/DomHelper.js" type="text/javascript"></script><script src="core/DomQuery.js" type="text/javascript"></script><script src="util/MixedCollection.js" type="text/javascript"></script><script src="widgets/ComponentMgr.js" type="text/javascript"></script><script src="widgets/Component.js" type="text/javascript"></script><script src="widgets/BoxComponent.js" type="text/javascript"></script><script src="widgets/Container.js" type="text/javascript"></script><script src="widgets/Panel.js" type="text/javascript"></script><script src="widgets/DataView.js" type="text/javascript"></script><script src="widgets/layout/ContainerLayout.js" type="text/javascript"></script><script src="core/CompositeElement.js" type="text/javascript"></script><script src="core/Template.js" type="text/javascript"></script><script src="util/Format.js" type="text/javascript"></script><script src="util/XTemplate.js" type="text/javascript"></script><script src="data/SortTypes.js" type="text/javascript"></script><script src="data/DataField.js" type="text/javascript"></script><script src="data/Record.js" type="text/javascript"></script><script src="data/DataReader.js" type="text/javascript"></script><script src="data/JsonReader.js" type="text/javascript"></script><script src="data/StoreMgr.js" type="text/javascript"></script><script src="data/store.js" type="text/javascript"></script><script src="data/JsonStore.js" type="text/javascript"></script> <script src="ext2.0/source/data/Connection.js" type="text/javascript"></script><script src="ext2.0/source/data/DataProxy.js" type="text/javascript"></script><script src="ext2.0/source/data/HttpProxy.js" type="text/javascript"></script><script src="ext2.0/source/widgets/Shadow.js" type="text/javascript"></script><script src="ext2.0/source/widgets/Layer.js" type="text/javascript"></script><script src="ext2.0/source/dd/DDCore.js" type="text/javascript"></script><script src="ext2.0/source/widgets/tips/Tip.js" type="text/javascript"></script><script src="ext2.0/source/widgets/tips/ToolTip.js" type="text/javascript"></script> ext2.0/source/util/DelayedTask.jsext2.0/source/util/KeyMap.jsext2.0/source/widgets/WindowManager.jsext2.0/source/widgets/Resizable.jsext2.0/source/widgets/Window.js jquery 取值问题急 用js怎么获取"#"号的样式表 求助,使用jQuery的validate插件时,不能提交表单 GridView如何用javascript实现点击某一列某一单元格来编辑单元格? 文字换行显示 正则老问题 evt是什么? 为什么页面中的图片显示总是一个白块 如何实现点击button按钮,在页面上新增加一个文本框 问一个在JS中的字符处理问题(简单+送分) 高分求jquery+ajax操作html页面实例 为什么类在执行函数的过程中 原先定义的变量看不到了
<html>
<head>
<title> </title> <script language="javascript">
function test(){
var div=document.getElementById("aaa");
if(!div.onclick){
alert("div.onclick")
}
if(!div.onmousedown){
alert("div.onmousedown")
}
if(!div.onmouseover){
alert("div.onmouseover")
} }
window.onload=function(){
test();
}
</script>
</head>
<body>
<div id="aaa" onclick="a()" onmousedown="b()"></div>
</body>
</html>
<head>
<script language="javascript">
var ttt=document.getElementById("ttt");
if(ttt.addEventListener){ //Firefox
ttt.addEventListener("click",a,false);
ttt.addEventListener("click",b,false);
ttt.addEventListener("click",c,false);
}
else{ //可恶的IE
ttt.attachEvent("onclick",a);
ttt.attachEvent("onclick",b);
ttt.attachEvent("onclick",c);
}function a(){
alert("a");
}function b(){
alert("b");
}function c(){
alert("c");
}
</script>
</head>
<body>
<div id="ttt">你好,世界!</div>
</body>
</html>我想知道的是如何才能列出ttt的click事件的所有事件响应函数(这里是a,b,c)
放到window.onload里面吧,这样肯定不行的
ttt.onclick得到的应该是一个数组吧,可以为一个事件指定多个处理函数的
请楼上给出关键代码
<script src="adapter/ext-base.js" type="text/javascript"></script><script src="util/Observable.js" type="text/javascript"></script>
<script src="core/EventManager.js" type="text/javascript"></script>
<script src="core/Element.js" type="text/javascript"></script><script src="core/Fx.js" type="text/javascript"></script>
<script src="core/DomHelper.js" type="text/javascript"></script>
<script src="core/DomQuery.js" type="text/javascript"></script><script src="util/MixedCollection.js" type="text/javascript"></script>
<script src="widgets/ComponentMgr.js" type="text/javascript"></script>
<script src="widgets/Component.js" type="text/javascript"></script>
<script src="widgets/BoxComponent.js" type="text/javascript"></script><script src="widgets/Container.js" type="text/javascript"></script>
<script src="widgets/Panel.js" type="text/javascript"></script>
<script src="widgets/DataView.js" type="text/javascript"></script>
<script src="widgets/layout/ContainerLayout.js" type="text/javascript"></script><script src="core/CompositeElement.js" type="text/javascript"></script>
<script src="core/Template.js" type="text/javascript"></script>
<script src="util/Format.js" type="text/javascript"></script>
<script src="util/XTemplate.js" type="text/javascript"></script><script src="data/SortTypes.js" type="text/javascript"></script>
<script src="data/DataField.js" type="text/javascript"></script>
<script src="data/Record.js" type="text/javascript"></script>
<script src="data/DataReader.js" type="text/javascript"></script>
<script src="data/JsonReader.js" type="text/javascript"></script>
<script src="data/StoreMgr.js" type="text/javascript"></script>
<script src="data/store.js" type="text/javascript"></script>
<script src="data/JsonStore.js" type="text/javascript"></script>
<script src="ext2.0/source/data/DataProxy.js" type="text/javascript"></script>
<script src="ext2.0/source/data/HttpProxy.js" type="text/javascript"></script>
<script src="ext2.0/source/widgets/Shadow.js" type="text/javascript"></script>
<script src="ext2.0/source/widgets/Layer.js" type="text/javascript"></script>
<script src="ext2.0/source/dd/DDCore.js" type="text/javascript"></script>
<script src="ext2.0/source/widgets/tips/Tip.js" type="text/javascript"></script>
<script src="ext2.0/source/widgets/tips/ToolTip.js" type="text/javascript"></script>
ext2.0/source/util/KeyMap.js
ext2.0/source/widgets/WindowManager.js
ext2.0/source/widgets/Resizable.js
ext2.0/source/widgets/Window.js