美文网首页
定制化squery

定制化squery

作者: 前端许 | 来源:发表于2021-11-30 17:25 被阅读0次

$.extend拓展()

<script src="./jquery-1.12.4.js"></script>

   <script>

       /* $.extend()函数用于将一个或多个对象的内容合并到目标对象*/

        let obj1 = {

            name:'zhangsan',

            age:18,

            study:{

                k:'大数据',

                cj:'80'

            }

        }

        let obj2 = {

            name:'lisi',

            car:'bmw',

            biao:'lls',

            study:{

                k:'前端'

            }

        }

        /* 把两个对象合并成一个对象 */

        /* 合并的对象是obj1 */

        /* 第一个参数默认为false 表明没有深度合并对象 */

        /* obj1里面的cj字段不会被保留,obj1被obj2覆盖了 */

        /* let newobj = $.extend(obj1,obj2);

        console.log('newobj',newobj)

        console.log('obj1',obj1)

        console.log('obj2',obj2) */

        /* 第一个参数默认为true 表明深度合并对象*/

        /* obj1里面的cj字段也会被保留 */

        /* let newobj = $.extend(true,obj1,obj2);

        console.log('newobj',newobj)

        console.log('obj1',obj1)

        console.log('obj2',obj2) */

   </script>

$.extend应用

$.fn.extend()

$.fn.extend扩展.js

/* $.fn.extend() 函数为jQuery扩展一个或多个实例属性和方法 */

       /* 实例理解为jq对象 */

       /* 怎么实现 $('div').show(); 这种功能? */

       /* jQuery.fn是jQuery的原型对象,jQuery.fn.extend()方法用于为jQuery的原型添加新的属性和方法。这些方法可以在jQuery实例对象上调用

 */

        /* $.fn.extend( object ) 里面object 用来合并到jQuery的原型对象上

*/

$.fn.extend({

    setvalue:function(){

        /* 这里的this是jq对象,所以只能用jq的方法 */

        this.val('请输入内容')

    },

    setplacehold:function(){

        this.attr('placeholder','请输入你想要的富婆类型')

    },

    checkAll:function(){

        /* 这上面的this代表的是调用者(input[type=checkbox]元素集合) */

        this.each(function(index,item){

            /* console.log(index,item) */

            /* 这里的item是原生的元素 */

            /* item.checked=true; */

            /* $(item).prop('checked',true) */

            /* attr 适用于自定义的属性 */

            /* 对于元素本身存在的属性应该使用prop */

            console.log(this);

            /* 应为each里面的this是代表元素集合里面的每一个元素 */

            this.checked = true;

        })

    },

    noAll:function(){

        this.each(function(index,item){

            /* item.checked=false; */

            /* $(item).prop('checked',false) */

            this.checked = false;

        })

    }

})

jquery框架分析

相关文章

网友评论

      本文标题:定制化squery

      本文链接:https://www.haomeiwen.com/subject/luvdxrtx.html