1.操作元素的选中的checked的时候,用attr不合适,推荐使用prop
2.delegate 父级元素调用方法,为子级元素绑定事件(父级元素代替子级元素绑定事件)。
$("#dv").delegate("p", "click", function() {
alert("被点击了---");
});
3.jQuery包装集指的是通过$()方法返回的一个元素集,这跟一般的javascript数组有所区别, 包装集在后者的基础上还有一些初始化的函数和属性。
4.关于绑定事件
$("p").click(.....)
click 先创建,后绑定的事件是可以用的
$("p").bind("click",funciton(){.....}) 这种方式同上。
下面两种,可以为存在的元素绑定事件。后添加的也可以。
父级元素调用方法,代理子级元素绑定事件。
$("#dv").delegate("p","click", function(){....})这种方式,后添加也是有绑定的事件的。
$("#dv").on("click", "p", function () {...}) 和delegate是一样的,都是在为子元素绑定事件。只是参数顺序不一样。
因为delegate方法中是调用on的方法。所以,以后直接用on就可以了。
5.解绑事件unbind
$("#dv").unbind();解绑所有事件
$("#dv").unbind("mouseenter mouseleave");解绑多个事件
6.delegate解绑事件
$("#dv").delegate("p","click", function() {.....})
$("#dv").undelegate(); p的事件解绑。
$("#dv").undelegate("p", "click");移除单个事件
$("#dv").undelegate("p", "click mouseenter");移除多个事件
7.off解绑事件
父级元素和子级元素的所有的事件全部解绑
$("#dv").off();
把父级元素与子级元素的点击时间解绑。
$("#dv").off("click");
移除父级元素和子级元素多个事件
$("#dv").off("click mouseenter")
解绑 p标签的点击事件
$("#dv").off("click", "p")
解绑p所有的事件
$("#dv").off("", ''p");
解绑div中所有的子元素的点击事件
$("#dv").off("click", "**");
8.阻止事件冒泡
点击事件函数内 return false
9.触发事件的三种方法
$("#txt").focus();
$("#txt").trigger("focus");
$("#txt").triggerHandler("focus");// 这种方式,可以触发该事件,但是,不能触发浏览器的默认行为
10.each 方法用来遍历jquery对象的,但是,里面的每个对象最开始都是dom对象,如果想使用jquery方法,需要把dom对象转jquery对象。
11.多库共存的问题
var xy = $.noConflict();// 把$ 的权利给xy,$就可以作为其他的用法出现在代码中
12.包装集
包装集:把很多的DOM的对象进行包装或者是封装--->jquery对象
jquery对象-->DOM对象--->jquery对象[0]-->获取到这个对象
length属性
jquery中判断这个元素是否存在,就是通过包装集的length属性来测试
13.插件开发
$.fn.插件名 = function() {....}
14.事件参数对象 的几个属性
e.target 这个属性得到的是触发该时间的目标对象,此时是一个DOM对象
e.currentTarget 这个属性得到的是触发该事件的当前的对象。
$("#dv").click(function(e){
console.log($(e.target).attr("id"))
console.log(e.currentTarget)
})
ps.参考资料来自,传智播客视频中
网友评论