jQuery5事件相关
一、注册事件的方式
1、直接注册事件
$(this).事件名(动作函数);//$(this).click(fucntion(){//动作代码});
2、bind同时给一个对象注册多个事件
$(this).bind({"事件名1":事件处理函数,事件2:事件处理函数2,事件3:事件处理函数3});
$(this).bind(事件名,事件处理函数);
3、bind给同一个对象注册不同事件的同一个事件处理函数
$(this).bind("事件名1 事件名2",事件处理函数);
4、对于动态添加的元素bind并不能注册上事件,我们需要使用另一个方法delegate
$(页面中存在的元素).delegate(页面中存在元素的后代元素,事件名称,事件处理函数);
5、on注册事件
$(页面中存在的元素).on(事件名,事件处理函数);
$(页面中存在的元素).on(事件名,后代元素,事件处理函数);//注意:与bind的函数参数顺序有所不同
总结:直接注册事件只能注册一个对象的事件;bind对于一个对象的多个事件或者是多个事件的同一处理函数;delegate对于动态元素添加事件;on是综合了bind和delegate
二、事件取消
on off
bind unbind
delegate undelegate
取消时值需要传事件名和元素即可
三、事件触发
1、元素.事件名();
2、元素.trigger("事件名");
3、元素.triggerHandler("事件名");//不会触发浏览器的默认行为
四、事件对象
e.target //触发的元素
e.currentTarget//真正绑定的元素
e.delegateTarget//代理元素,绑定事件的元素
e.keyCode//键盘值
五、事件冒泡
return false;来进行阻止
六、each
$(this).each(function(index,item){
});
七、多库名字冲突
var zh = $.noConflict;