当前位置: 首页 > 工具软件 > Smoke jQuery > 使用案例 >

我的jQuery第十一天 jQuery工具方法

董子航
2023-12-01

jQeury工具方法

  • $.extend() $.fn.extend() $.ajax()

扩展方法

  • $.extend() 插件扩展(工具方法)
//    $.extend()
    //    $.fn.extend()
    //1.扩展方法 *** api 没有
    //2.浅层克隆
    //3.深层克隆 
    $.extend({
        definedMandom : function (start, final) {
            // [0, 1] * len + start
            var len = final - start;
            return Math.random() * len + start;
        } 
    }) //加到工具方法里面

    // $.fn.extend() //加到实例方法里面
  • $.fn.extend() 插件扩展(实例方法)
  • 实例方法拖拽demo
$.fn.extend({
        drag : function () {
            var disX,
                disY,
                self = this;
            $(this).on('mousedown', function (e){
                disX = e.pageX - $(this).offset().left;
                disY = e.pageY - $(this).offset().top;
                $(document).on('mousemove', function (e){
                    $(self).css({left : e.pageX - disX, top : e.pageY - disY})
                });
                $(document).on('mouseup', function (){
                    $(document).off('mousemove').off('mouseup')
                })
            })
            return this;
        }
    })
   $('#demo').drag()

浅层克隆 and 深层克隆

//浅层克隆
 var obj1 = {
            name : "zhou",
            age : 18,
        }
        var obj2 = {
            name : "yang",
            age : 19,
            smoke : true,
            girlFriend : {
                name : "xiaowang",
            }
        }
        var obj3 = {
            name : "wang",
            fortune : 10000000,
        }
        //参数两位到多位,将第二位参数往第一位参数克隆,原始值重复的直接覆盖,没有的添加进去
       $.extend(obj1, obj2)
//深层克隆,在需要在最前面在添加一个参数truel
//以让不共用一个引用值
$.extend(true,obj1, obj2)

$.ajax()

        //参数 obj 
        //属性 url : 'https://open.duyiedu.com/jq/person'
        // type : 请求方式
        // data : {} 参数,信息
        // success : 请求成功后处理函数
        // error : 请求失败后的处理函数
        // complete : 请求完成的处理函数 最后执行
        // context : 改变函数上下文
        // timeout : 
        // async :true false 是否同异步
        // dataType : 'jsonp'
    $.ajax({
        url : 'https://open.duyiedu.com/jq/person',
        type : 'GET',
        // async : false,
        // dataType : 'jsonp',
        // data : {
        //     username : 'zhou',
        //     passwrod : '123456'
        // }
        success : function (res) {
            $.each(res.data, function(index, ele){
                console.log(ele);
            })
        },
        error : function (e) {
            console.log(e.status, e.statusText)
        },
        complete : function () {
            // 
        },
        context : $('.wrapper'),
    })
    console.log('over')
 类似资料: