jQuery 多个事件绑定多个函数

1、可以采用事件映射

以bind()为例

语法:

$(selector).bind({event1:function1,event2:function2,...})

 

具体示例:

1 $("button").bind({
2             mouseover:function(){$("p").css("background","red");},
3             click:function(){$("p").css("background","yellow");},
4             dblclick:function(){$("p").css("background","blue");}
5 
7 })

 

2、使用e.type,判断选择一个事件执行

e.type返回的是时间的类型,例如onclick,onmousedown.onmousemove等等。主要用于对同一对象绑定多个事件时,判断事件类型用。

(备注:不确定是否对所有事件有用,需要自行测试,上述仅为学习过程中的记录,仅供参考。)
具体示例:

 1 $("button").bind("mouseover click dblclick",function(e){
 2 
 3 // 注意多个事件用空格隔开即可
 4 
 5 ver jQtype=e.type;
 6 
 7 if(jQtype=="mouseover")
 8 
 9 {//要执行的代码}
10 
11 else if(jQtype=="click")
12 
13 {//要执行的代码}
14 
15 else
16 
17 {//要执行的代码}
18 
19 //不同的事件对应不同的 e.type 的值,就可以判断执行哪个事件。
20 
21 })

 

根据最新的jQuery API文档指出 bind delegate live等方法已被弃用,建议用on()方法代替。附上jq官网API文档链接:

https://api.jquery.com/category/events/event-handler-attachment/

posted @ 2017-09-12 17:11  _逆光飞翔  阅读(647)  评论(0)    收藏  举报