JQuery常用和很有用处的方法
1、grep()方法:
用于数组元素过滤筛选
var arr=$.grep([0,1,2,3,4,5,6],function(n,i){ return n>2 });
var arr=$.grep([0,1,2,3,4,5,6],function(n,i){ return n>2 },ture);
函数用于使用指定函数处理数组中的每个元素(或对象的每个属性),并将处理结果封装为新的数组返回。
1. 在jQuery 1.6 之前,该函数只支持遍历数组;从 1.6 开始,该函数也支持遍历对象。
2. map()还会为函数传入两个参数:其一是当前迭代的元素或属性值,其二是当前迭代项的数组索引或对象属性名。
3. 该函数返回值将作为结果数组中的一个元素,如果返回值为null或undefined,则不会被添加到结果数组中。
var arr =$.map( [0,1,2], function(n){ return n + 4; });//[4,5,6]
上面每个数组中加了4
3、off()
$(selector).off(event,selector,function(eventObj),map)
off() 方法通常用于移除通过 on() 方法添加的事件处理程序。自 jQuery 版本 1.7 起,off() 方法是 unbind()、die() 和 undelegate() 方法的新的替代品
这是一个取消绑定的方法,如 你在一个元素上 $el.on.... 绑定了很多方法(click,moueover,moueout等等。。。), 你想取消所有方法绑定你就可以用 $el.off(),取消所有绑定
注意:如需移除指定的事件处理程序,当事件处理程序被添加时,选择器字符串必须匹配 on() 方法传递的参数。
4、extend()
$.extend( target [, object1 ] [, objectN ] )
指示是否深度合并
$.extend( [deep ], target, object1 [, objectN ] )
jQuery.extend() 函数用于将一个或多个对象的内容合并到目标对象。
这个可以用于传递 默认对象时可以用到,很方便 $el.extend({},defaulte,params);
5、data
$.data( element, key, value )
$.data() 函数用于在指定的元素上存取数据,返回设置值。
提示: 1.这是一个底层方法,.data() 方法更方便使用。
2.通过 data() 函数存取的数据都是临时数据,一旦页面刷新,之前存放的数据都将被移除。
3. 该方法目前并不提供在XML文档上跨平台设置,Internet Explorer不允许在XML文档中通过自定义属性附加数据。
注意: 1.通过data()函数存取的数据都是临时数据,一旦页面刷新,之前存放的数据都将被移除。
2. undefined 是一个没有被识别数据值。调用 jQuery.data( el, "name", undefined ) 将返回对应的 "name" 数据,等价于 jQuery.data(el, "name" ) 。
我们可以在一个元素上设置不同的值,并获取这些值: alert(jQuery.data( document.body, 'foo' )); alert(jQuery.data( document.body ));
6、on
$(selector).on(event,childSelector,data,function)
这里主要是讲其中 childSelector的作用,
on()委托事件的优点:原来的事件绑定,要绑定好多事件,现在只需要绑定一个事件,大大提高了效率和页面性能,解决的动态添加元素导致不能触发的bug。
Jq1.7+开始支持。