【轻知识】phper回顾下jquery

2018-06-29  本文已影响13人  言十年

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.参考资料来自,传智播客视频中

上一篇 下一篇

猜你喜欢

热点阅读