JavaScript事件的绑定与取消和事件监听
2012-04-30 16:03
507 查看
很多情况下,比如我们想对一个文本框或者按钮进行事件绑定的时候,一般直接在他上面写上什么onclick等等的事件,但是对于这样的时间的去除,比如希望一个按钮在这里仅仅按下一次,然后再次按下的时候就不能有什么效果了,这就需要对事件 的监听和绑定还有取消实行动态的机制,下面我们来演示一个小例子来说明一下事件的绑定和取消机制/
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>test6.html</title> <script type="text/javascript"> function test(){ window.alert("您投了一次票"); document.getElementById("1").detachEvent("onclick",test); } </script> </head> <body> <input type="button" value="投票" id="1"/> <script type="text/javascript"> document.getElementById("1").attachEvent("onclick",test); </script> </body> </html>这里使用document.getElementById("1").attachEvent("onclick",test);进行动态的事件绑定,使用
document.getElementById("1").detachEvent("onclick",test)进行动态的时间的取消,这样就实现了这个事件只能相应一次,下
次再点击这个按钮的时候就不会再产生什么效果。
下面再演示一个时时监听键盘事件,判断输入的是否是数字,如果不是数字直接动态提示,然后拒绝其输入
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>test7.html</title> <script type="text/javascript"> function test(event){ //用户每按下一个按键,就去判断是不是数字 if(event.keyCode<48 || event.keyCode > 57){ window.alert("您输入的不是一个数字"); return false; } } </script> </head> <body> <input type="text" onkeypress="return test(event);" />请输入数字 </body></html>这里的event就是一个事件对象,他能返回很多的信息,具体请参考文档。
相关文章推荐
- JavaScript 事件绑定、事件监听、事件委托
- javascript事件绑定,取消,addEventListener,removeEventListener,attachEvent,detachEvent
- 转:JavaScript中绑定事件监听函数的通用方法
- JavaScript事件绑定和事件监听的区别
- JavaScript为事件句柄绑定监听函数实例详解
- JavaScript中绑定事件监听函数的通用方法[ addEvent() ]
- JavaScript:事件绑定与监听
- javascript 兼容W3c和IE的添加(取消)事件监听方法
- JavaScript中绑定事件监听函数的通用方法[ addEvent() ]
- JS 监听绑定和取消事件
- Javascript事件绑定、事件监听、事件委托
- JavaScript基础_13事件绑定函数+监听函数+冒泡事件流
- 深入了解javascript事件 -事件绑定(事件处理函数/监听函数)
- JavaScript中为事件句柄绑定监听函数
- JavaScript绑定事件监听函数的通用方法
- JavaScript中绑定事件监听函数的通用方法[ addEvent() ]
- JavaScript为事件句柄绑定监听函数实例详解
- JavaScript中为事件句柄绑定监听函数
- javascript中循环绑定监听事件的解决方案
- 书:"Pro JavaScript Techniques 精通JavaScript"之绑定/移除事件监听函数