2.10

55 阅读1分钟

/* .extend()用于将一个或者多个对象的内容合并到目标对象//格式.extend()用于将一个或者多个对象的内容合并到目标对象 */ /*格式 .extend(true(这里不写就是默认false),target(目标对象),obj1,obj2(需要被合并的对象) */

    // var obj1={
    //     apple:0,
    //     banana:{weight:10,price:100},
    //     cherry:97
    // };
    // var obj2={
    //     banana:{price:200},
    //     durian:100
    // };
    /* console.log($extend(obj1,obj2)); 如果默认为false表示不深度合并对象,相同的值会被直接覆盖掉*/
    // console.log($extend(true,obj1,obj2));

    // function fn1(obj,flag){
    //     var obj2={
    //     banana:{price:200},
    //     durian:100
    // };
    // console.log($.extend(flag,obj,obj2));
    // }
    // fn1(obj1,true)





    // var car1={
    //     color:{name:'水晶白',price:'1000'}
    // };
    
    
    // function fn1(obj,flag){
    //     var car2={
    //     carName:'保时捷',
    //     color:{name:'帅酷黑'}
    // };
    // console.log($.extend(flag,obj,car2));
    // }/* 可以通过extend对原来的默认属性进行拓展 */
     
    // fn1(car1,true)
     /* $.fn.extend() 可以在jQuery实例对象上调用
       $('')这个就是jQuery对象*/
    //   $.fn.extend({
    //       consoleFn:function(){
    //           console.log('我自己定义的打印方法');
    //       }
    //   })
    //   $('body').consoleFn()







    /* 这样就可以全选了,实现了一个按钮全选和全部取消 */
    $.fn.extend({
          checked:function(){
              /* this代表JQ对象 */
             /*  console.log(this); */
              this.each(function(i,e){
                    e.checked=true;
                 /*  console.log($('input')) */
              })
          }
      })
    $.fn.extend({
          unchecked:function(){
              /* this代表JQ对象 */
             /*  console.log(this); */
              this.each(function(i,e){
                    e.checked=false;
                 /*  console.log($('input')) */

              })
          }
      })

      var flag=true;
      $('button').click(function(){
        if(flag){
            $(this).text('取消全选');
        $('input').checked();
        flag=false;
        }else{
            $(this).text('全选');
            $('input').unchecked();
            flag=true;
        }
       
      })