第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
  • 立即調(diào)用表達式 任何庫與框架設(shè)計的第一個要點就是解決命名空間與變量污染的問題。jQuery就是利用了JavaScript函數(shù)作用域的特性,采用立即調(diào)用表達式包裹了自身的方法來解決這個問題。 匿名函數(shù),就是沒有函數(shù)名的函數(shù),也就是不存在外部引用。 function(){ //代碼邏輯 } 上面這種寫法是錯了,聲明了它但是又不給名字又沒有使用,所以在語法上錯誤的。 要調(diào)用一個函數(shù),我們必須要有方法定位它、引用它。所以,我們要取一個名字: var jQuery = function(){ //代碼邏輯 } Query使用()將匿名函數(shù)括起來,然后后面再加一對小括號(包含參數(shù)列表),那么這小括號能把我們的表達式組合分塊,并且每一塊(也就是每一對小括號),都有一個返回值。這個返回值實際上也就是小括號中表達式的返回值。所以,當我們用一對小括號把匿名函數(shù)括起來的時候,實際上小括號返回的,就是一個匿名函數(shù)的Function對象。 總結(jié):全局變量是魔鬼, 匿名函數(shù)可以有效的保證在頁面上寫入JavaScript,而不會造成全局變量的污染,通過小括號,讓其加載的時候立即初始化,這樣就形成了一個單例模式的效果從而只會執(zhí)行一次。
    查看全部
  • (function(window, undefined) { var jQuery = function() {} window.jQuery = window.$ = jQuery; })(window); window和undefined都是為了減少變量查找所經(jīng)過的scope作用域。當window通過傳遞給閉包內(nèi)部之后,在閉包內(nèi)部使用它的時候,可以把它當成一個局部變量,顯然比原先在window scope下查找的時候要快一些。
    查看全部
  • jquery post,get 調(diào)用ajax 方法
    查看全部
  • 數(shù)組模擬的有問題,輸入-1的時候就無法取值,改成下面這樣應(yīng)該可以: ajQuery.fn = ajQuery.prototype = { resultarry:[], init: function(selector) { this.selector = selector; //模擬出數(shù)組格式 var results = document.querySelectorAll(selector); for (var i = 0; i < results.length; i++) { this.resultarry[i] = results[i]; } return this; }, constructor: ajQuery } 然后get方法改成: get: function(num) { if (num != null) { return (num < 0 ? this.resultarry[num + this.resultarry.length] : this.resultarry[num])
    查看全部
  • 代碼快照
    查看全部
  • 正則好復(fù)雜的樣子 //分組 var rcomma = /^[\x20\t\r\n\f]*,[\x20\t\r\n\f]*/; //關(guān)系符 var rcombinators = /^[\x20\t\r\n\f]*([>+~]|[\x20\t\r\n\f])[\x20\t\r\n\f]*/; //空白 var whitespace = "[\\x20\\t\\r\\n\\f]";
    查看全部
  • 祖宗和后代 空格 父親和兒子 > 臨近兄弟 + 普通兄弟 ~
    查看全部
    0 采集 收起 來源:Sizzle解析原理

    2018-03-22

  • $('*').data 與 $.data 的區(qū)別在于,前者由源碼可知是訪問DOM元素進行標記 unlock 的,而后者是對jQuery對象標記 unlock。 多個jQuery對象在相同選擇符參數(shù)的情況下對應(yīng)相同的DOM元素,因此設(shè)定是覆蓋的。而不同的jQuery對象在處理上是分別設(shè)定的.
    查看全部
  • 不理解:Deferred整體結(jié)構(gòu)
    查看全部
  • 基本篩選器: eq get first lang It not odd root... 內(nèi)容篩選器: contains empty has parent... 可見篩選器: hidden visible 子元素篩選器: first-child nth-child only-child... 表單: bottom checkbox foucs input text...
    查看全部
    0 采集 收起 來源:理解CSS選擇器

    2015-05-16

  • jQuery.each(tuples, function(i, tuple) { //取出參數(shù) var fn = jQuery.isFunction(fns[i]) && fns[i]; // deferred[ done | fail | progress ] for forwarding actions to newDefer // 添加done fail progress的處理方法 // 針對延時對象直接做了處理 deferred[tuple[1]](function() { var returned = fn && fn.apply(this, arguments); if (returned && jQuery.isFunction(returned.promise)) { returned.promise() .done(newDefer.resolve) .fail(newDefer.reject) .progress(newDefer.notify); } else { newDefer[tuple[0] + "With"](this === promise ? newDefer.promise() : this, fn ? [returned] : arguments); } }); 把then的方法通過: deferred.done deferred.fail deferred.progress 加入到上一個對象的各自的執(zhí)行隊列中保存了。這樣就實現(xiàn)了不同對象之間的關(guān)聯(lián)調(diào)用。 同樣如果then返回的是一個promise對象(ajax)的時候: if (returned && jQuery.isFunction(returned.promise)) { returned.promise() .done(newDefer.resolve) .fail(newDefer.reject) .progress(newDefer.notify); 也可以直接處理了。
    查看全部
  • 緩存支持的參數(shù)
    查看全部
  • --> 快捷方法: jQuery.get() jQuery.getJSON() jQuery.getScript() jQuery.post() jQuery接口的設(shè)計原理 業(yè)務(wù)邏輯是復(fù)雜多變的,jQuery的高層API數(shù)量非常多,而且也非常的細致,這樣做可以更友好的便于開發(fā)者的操作,不需要必須在一個接口上重載太多的動作。我們在深入內(nèi)部看看Ajax的高層方法其實都是統(tǒng)一調(diào)用了一個靜態(tài)的jQuery.ajax方法,代碼見右側(cè)代碼編輯器(27-43行)。 在jQuery.ajax的內(nèi)部實現(xiàn)是非常復(fù)雜的,首先ajax要考慮異步的處理與回調(diào)的統(tǒng)一性,所以就引入了異步隊列模塊(Deferred)與回調(diào)模塊(Callbacks), 所以要把這些模塊方法在ajax方法內(nèi)部再次封裝成、構(gòu)建出一個新的jQXHR對象,針對參數(shù)的默認處理,數(shù)據(jù)傳輸?shù)母袷交鹊取?
    查看全部
  • jQuery一共13個模塊,從2.1版開始jQuery支持通過AMD模塊劃分,jQuery在最開始發(fā)布的1.0版本是很簡單的,只有CSS選擇符、事件處理和AJAX交互3大塊。其發(fā)展過程中,有幾次重要的變革: ? 1.2.3 版發(fā)布,引入數(shù)據(jù)緩存,解決循環(huán)引用與大數(shù)據(jù)保存的問題 ? 1.3 版發(fā)布,它使用了全新的選擇符引擎Sizzle,在各個瀏覽器下全面超越其他同類型JavaScript框架的查詢速度,程序庫的性能也因此有了極大提升 ? 1.5 版發(fā)布,新增延緩對像(Deferred Objects),并用deferred重寫了Ajax模塊 ? 1.7 版發(fā)布,抽象出回調(diào)對象,提供了強大的的方式來管理回調(diào)函數(shù)列表。 每一次大的改進都引入了一些新的機制、新的特性,通過這些新的機制就造就了如今jQuery庫,一共13個模塊,模塊不是單一的,比如jQuery動畫,都會依賴異步隊列、動畫隊列、回調(diào)隊列與數(shù)據(jù)緩存模塊等。 jQuery抽出了所有可復(fù)用的特性,分離出單一模塊,通過組合的用法,不管在設(shè)計思路與實現(xiàn)手法上jQuery都是非常高明的。 五大塊: jQuery按我的理解分為五大塊,選擇器、DOM操作、事件、AJAX與動畫,那么為什么有13個模塊?因為jQuery的設(shè)計中最喜歡的做的一件事,就是抽出共同的特性使之“模塊化”,當然也是更貼近S.O.L.I.D五大原則的“單一職責(zé)SRP”了,遵守單一職責(zé)的好處是可以讓我們很容易地來維護這個對象,比如,當一個對象封裝了很多職責(zé)的時候,一旦一個職責(zé)需要修改,勢必會影響該對象的其它職責(zé)代碼。通過解耦可以讓每個職責(zé)更加有彈性地變化。 我們來看看jQuery文檔針對業(yè)務(wù)層的Ajax的處理提供了一系列的門面接口: .ajaxComplete() .ajaxError() .ajaxSend() .ajaxStart() .ajaxStop() .ajaxSuccess() 底層接口: jQuery.ajax() jQuery.ajaxSetup() --->1
    查看全部
  • 所以理解回調(diào)函數(shù)最重要的2點: 1、一個回調(diào)函數(shù)作為參數(shù)傳遞給另一個函數(shù)是,我們僅僅傳遞了函數(shù)定義。我們并沒有在參數(shù)中執(zhí)行函數(shù)。我們并不傳遞像我們平時執(zhí)行函數(shù)一樣帶有一對執(zhí)行小括號()的函數(shù) 2、回調(diào)函數(shù)并不會馬上被執(zhí)行,它會在包含它的函數(shù)內(nèi)的某個特定時間點被“回調(diào)”。
    查看全部

舉報

0/150
提交
取消
課程須知
源碼的閱讀不是一蹴而就的,需要大家有一定的功底,比如jQuery的基礎(chǔ)運用以及API的熟悉度,除此之外要有牢固的javascript、DOM、CSS的基礎(chǔ)功底,甚至還需要理解常見的設(shè)計模式、數(shù)據(jù)結(jié)構(gòu)等等。當然大家也不要被這些給嚇住了,理解,總是需要一種慢慢的學(xué)習(xí)過程。
老師告訴你能學(xué)到什么?
通過本課程的學(xué)習(xí),您可以由淺入深地剖析jQuery庫的設(shè)計與實現(xiàn)。 其中我們圍繞的重心: 1、設(shè)計理念 2、結(jié)構(gòu)組織 3、接口設(shè)計 4、模式運用 5、場景套用

微信掃碼,參與3人拼團

微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復(fù)購買,感謝您對慕課網(wǎng)的支持!