国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

jquery源碼----初步認識源碼

2024-04-27 15:18:54
字體:
供稿:網(wǎng)友
(function(window,undefined){    // 為什么要傳入window這個形參:    //     1.其實是為了方便壓縮,如果形參是e,或者w,傳入window的話可以在閉包內(nèi)部用w或者e代替window進行壓縮    //     2.為了提升查找速度,傳入不用去最底層去查找了    // 為什么傳入undefined:    //     1.為了防止undefined被修改    //     如果外部 undefined = 10 ; undefined 會被修改    // 建議我們不要使用"use strict";        rootjquery,  //文檔根目錄 rootjquery = jQuery(document);        readyList,   //與DOM加載有關(guān) 后面會有解釋        core_strundefined = typeof undefined ,  //返回的是字符串"undefined"    //  先來解釋“undefined” 和 undefined 的區(qū)別 :    //    如果是IE678下:如果是 xml對象的屬性的時候,window.a == undefined ;這種情況是錯誤的,不兼容      //    只能用這個:typeof window.a == "undefined" ;    location = window.location,    document = window.document,    docElem = document.documentElement,    //如果發(fā)生jquery,$變量發(fā)生沖突,權(quán)限讓渡的問題,后面會有仔細的講解    _jquery = window.jQuery,    _$ = window.$,    //$.type()方法有關(guān),講$.type()的時候會詳解    //class2type = {'[Object String]' : 'string' , '[object Array]' : 'array'}    class2type = {} ;    //2.0.3版本前與數(shù)據(jù)存儲有關(guān),2.0.3以后不用了    core_deletedIds = [],    core_concat = core_deletedIds.concat,    core_push = core_deletedIds.push,    core_slice = core_deletedIds.slice,    core_indexOf = core_deletedIds.indexOf,    core_toString = core2type.toString,    core_hasOwn = core2type.hasOwnPRoperty,     core_trim = core_version.trim, //去前后空格    //.............................jquery函數(shù)...........................................................................    先來看我們用js寫面向?qū)ο?        1.寫個構(gòu)造函數(shù):            function Person(){            }        2.添加原型屬性:            先添加一個初始化方法:實現(xiàn)初始化            Person.prototype.init = function(){            };            Person.prototype.CSS = function(){            };            var person = new Person();            person.init();            person.css();    但是,jquery是這樣寫的:注意看Jquery的調(diào)用方式的不同:他不是通過new一個對象來調(diào)用的,而是:jquery().css();        function jQuery(){            return new jQuery.prototype.init();        }        //匹配數(shù)字:正負小數(shù)點科學(xué)計數(shù)法 會在css方法里面講到        core_pnum = /[+-]?(?:/d/.|)/d+(?:[eE][+-]?/d+|)/.source,        //空格        core_rnotwhite = //s+/g,        //匹配標(biāo)簽  和  id  的形式        rquickExpr = /^(?:/s*(<[/w/W]+>)[^>]*|#([/w-]*))$/,        rsingleTag = /^<(/w+)/s*//?>(?:<///1>|)$/,        rmsPrefix = /^-ms-/,        rdashAlpha = /-([/da-z])/gi,        jQuery.prototype.init = function(){        }        jQuery.prototype.css = function(){        }         //也就是jQuery 和 jquery.prototype.init() 公用一個原型,那個由new jQuery.prototype.init()產(chǎn)生的對象的_proto_指針也指向這個原型對象,       //這就解釋了為啥jquery的有些方法new jQuery.prototype.init()new的對象也能用,因為公用一個原型對象        jquery.prototype.init.prototype = jQuery.fn = jQuery.prototype;
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 息烽县| 唐河县| 泾源县| 阜新| 嫩江县| 航空| 西畴县| 湘阴县| 溧水县| 澄迈县| 开远市| 麦盖提县| 肥城市| 油尖旺区| 呼伦贝尔市| 贵阳市| 钟山县| 株洲县| 邻水| 黄梅县| 星子县| 锡林郭勒盟| 顺昌县| 南投县| 申扎县| 松滋市| 镇赉县| 惠东县| 布尔津县| 姜堰市| 潢川县| 江永县| 浦县| 嘉荫县| 阳谷县| 无极县| 锦州市| 大港区| 平顶山市| 临泽县| 寻乌县|