午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

(function($){...})(jQuery)是什么意思

 好閨女瑤瑤 2016-01-28
這里實(shí)際上是匿名函數(shù)

function(arg){...}
這就定義了一個(gè)匿名函數(shù),參數(shù)為arg

而調(diào)用函數(shù) 時(shí),是在函數(shù)后面寫上括號(hào)和實(shí)參的,由于操作符的優(yōu)先級(jí),函數(shù)本身也需要用括號(hào),即:
(function(arg){...})(param)
這 就相當(dāng)于定義了一個(gè)參數(shù)為arg的匿名函數(shù),并且將param作為參數(shù)來(lái)調(diào)用這個(gè)匿名函數(shù)

而(function($){...}) (jQuery)則是一樣的,之所以只在形參使用$,是為了不與其他庫(kù)沖突,所以實(shí)參用jQuery

**************************************************************************
其實(shí)就等于
var fn = function($){....};
fn(jQuery);

其實(shí)可以這么理解,不過要注意的是fn是不存在的
那個(gè)函數(shù)直接定義,然后就運(yùn)行了。就“壓縮”成下面的樣子了
(function($){...})(jQuery) 
**************************************************************************
簡(jiǎn)單理解是(function($){...})(jQuery)用來(lái)定義一些需要預(yù)先定義好的函數(shù)
$(function(){ })則是用來(lái)在DOM加載完成之后運(yùn)行\(zhòng)執(zhí)行那些預(yù)行定義好的函數(shù).
**************************************************************************

開發(fā)jQuery插件時(shí)總結(jié)的一些經(jīng)驗(yàn)分享一下。 
一、先看 

jQuery(function(){ 
}); 
全寫為 
jQuery(document).ready(function(){ 

}); 

意義為在DOM加載完畢后執(zhí)行了ready()方法。 
二、再看 

(function(){ 

})(jQuery); 
其實(shí)際上是執(zhí)行()(para)匿名方法,只不過是傳遞了jQuery對(duì)象。 

三、總結(jié) 

jQuery(function(){ });用于存放操作DOM對(duì)象的代碼,執(zhí)行其中代碼時(shí)DOM對(duì)象已存在。不可用于存放開發(fā)插件的代碼,因 為jQuery對(duì)象沒有得到傳遞,外部通過jQuery.method也調(diào)用不了其中的方法(函數(shù))。 
(function(){ })(jQuery);用于存放開發(fā)插件的代碼,執(zhí)行其中代碼時(shí)DOM不一定存在,所以直接自動(dòng)執(zhí)行DOM操作的代碼 請(qǐng)小心使用。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多