jQuery常用方法

一,.each( function(index, Element) )

遍历一个jQuery对象,为每个匹配元素执行一个函数

$( "li" ).each(function( index ) {
  console.log( index + ": "" + $(this).text() );
});

二,jQuery.each( collection, callback(indexInArray, valueOfElement) )

jQuery静态循环方法
一个通用的迭代函数,它可以用来无缝迭代对象和数组。数组和类似数组的对象通过一个长度属性(如一个函数的参数对象)来迭代数字索引,从0到length - 1。其他对象通过其属性名进行迭代。

 var obj = {
   "flammable": "inflammable",
   "duh": "no duh"
   };
 $.each( obj, function( key, value ) {
     alert( key + ": " + value );
});
jQuery常用方法_第1张图片
图片.png

三,jQuery.extend([deep,] target [, object1 ] [, objectN ] )

1,
      var obj1={};
      var obj2={
          name:"liu",
          age:18
       };
     $.extend(obj1,obj2);

相当于把obj2拷贝到obj1上

jQuery常用方法_第2张图片
图片.png
2
       var obj1={};
       var obj2={
          name:"liu",
          age:18
     };
    var obj3={
         name:"vally",
        sex:"man"
     };
  $.extend(obj1,obj2,obj3);

把obj2拷贝到obj1上,再把obj3拷贝到obj1上,有相同属性key,覆盖,没有就添加

jQuery常用方法_第3张图片
图片.png

实际使用场景:
用户输入姓名和年龄,如果用户没有输入年龄,就会使用我们设置的默认年龄
代码

jQuery常用方法_第4张图片
图片.png

3,返回值为,复制覆盖的一个新对象

       function getnews(obj){
              var sp_obj={
                    name:"游客",
                   age:"不详"
             };
           // var relobj={};

         //$.extend(relobj,sp_obj,obj);
        var relobj=$.extend({},sp_obj,obj);
        console.log(relobj);
    }

4,

图片.png

设置为true,表示深拷贝
注:
浅拷贝表示拷贝栈里面的内容,或则堆里面的第一层内容
深拷贝表示拷贝里面的全部内容

5,

jQuery常用方法_第5张图片
图片.png

每一个jQuery选择器上面都有指定对象的属性

四,克隆(DOM节点(所有包括绑定的事件))

.clone( [withDataAndEvents ] )

jQuery常用方法_第6张图片
图片.png

五,.index() / .index(selector)/ .index(element)

在事件绑定,事件代理的时候,获取当前被单击的元素的下标

jQuery常用方法_第7张图片
图片.png

六,

小知识点:
为什么js文件和js代码要放到html文件的body里面的后面
因为,1,js文件的下载会阻止其他文件的下载解析,并且下载完成就执行。2,js操作dom所以js要在dom加载完成 才应该执行
我们怎么保证js的执行在dom解析完成再执行呢?
在把js代码包裹一层:
window.onload=function(){
js代码。。。
}
window.onload是要在所以文件(html ,css,图片全部加载完成)再执行js代码,如果图片很多,那么,js的执行会延迟很久, 这样会影响页面效果的呈现

那么在jQuery里面是怎么解决的呢?
   //所有的文档都加载完成后,再去执行js代码
  //方法一:
  $(document).ready(function(){
       js代码。。。
  })
 //方法二:
 $(function(){
    js代码。。。
})

这种方法要注意:里面的变量就不是window的全局变量了,直接在控制台是无法访问到function匿名函数里面的变量
jquery中文文档

你可能感兴趣的:(jQuery常用方法)