JQ中的事件与JS中的事件很类似,大体上可分为鼠标事件,键盘事件,以及一些网络事件。
其中的事件机制是指:jQuery对JavaScript操作DOM事件的封装,包括了:事件绑定、事件解绑、事件触发。
事件绑定可分为:
1、简单事件绑定可分为以下类型:
click(handler) 单击事件
blur(handler) 失去焦点事件
mouseenter(handler) 鼠标进入事件
mouseleave(handler) 鼠标离开事件
dbclick(handler) 双击事件
change(handler) 改变事件,如:文本框值改变,下来列表值改变等
focus(handler) 获得焦点事件
keydown(handler) 键盘按下事件
2、bind方式(不推荐,1.7以后的jQuery版本被on取代)
$(" p").bind("click mouseenter", function(e){
//事件响应方法
}
需 第一个参数:事件类型、第二个参数:事件处理程序
这种方式的优点是:可以同时绑定多个事件,比如:bind(“mouseenter mouseleave”, function(){})
缺点是:要绑定事件的元素必须存在文档中。
3、delegate()方式(特点:性能高,支持动态创建的元素)
作用:给匹配到的元素绑定事件,对支持动态创建的元素有效
$(".parentBox").delegate("p", "click", function(){
//为 .parentBox下面的所有的p标签绑定事件
});
第一个参数:selector,要绑定事件的元素
第二个参数:事件类型
第三个参数:事件处理函数
与前两种方式最大的优势:减少事件绑定次数提高效率,支持动态创建出来的元素绑定事件!
3、on方式
事件解绑