1
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了友好免費建站歡迎大家使用!
首先(function(){})()這種寫法
是創(chuàng)建了一個匿名的方法并立即執(zhí)行(function(){})這個是匿名方法后面的括號就是立即調(diào)用了這個方法)。
這樣做可以創(chuàng)建一個作用域以保證內(nèi)部變量與外部變量不發(fā)生沖突,比如$
jQuery
等jquery內(nèi)部定義的變量。
2
(function($){})(jQuery)
這個寫法主要的作用還是保證jquery不與其他類庫或變量有沖突
首先是要保證jQuery這個變量名與外部沒有沖突(jquery內(nèi)部$與jQuery是同一個東西
有兩個名字的原因就是怕$與其他變量名有沖突二jQuery與其他變量沖突的幾率非常小)并傳入匿名對象,匿名對象給參數(shù)起名叫做$(其實和jquery內(nèi)部是一樣的)
然后你就可以自由的在(function($){})(jQuery)里寫你的插件而不需要考慮與外界變量是否存在沖突
$就是jquery對象,$()就是jQuery(),在里面可以傳參數(shù),作用就是獲取元素
如下例子
$(".div1") 表示獲取類名為div1的元素,例如獲取div class="div1"/div
$(".div1").onclick表示類名為div1的div點擊事件
jquery中$.,例如$.post(),$.get(),$.ajax()等這些都是jquery這個對象的方法
(function(){})表示一個匿名函數(shù)。function(arg){...}定義了一個參數(shù)為arg的匿名函數(shù),然后使用(function(arg){...})(param)來調(diào)用這個匿名函數(shù)。其中param是傳入這個匿名函數(shù)的參數(shù)。
擴展資料:
需要注意與$(function(){})的區(qū)別:$(function(){}) 是 $(document).ready(function(){}) 的簡寫,用來在DOM加載完成之后執(zhí)行一系列預(yù)先定義好的函數(shù)。
jQuery的模塊可以分為3部分:入口模塊、底層支持模塊和功能模塊。
在構(gòu)造jQuery對象模塊中,如果在調(diào)用構(gòu)造函數(shù)jQuery()創(chuàng)建jQuery對象時傳入了選擇器表達式,則會調(diào)用選擇器Sizzle(一款純JavaScript實現(xiàn)的CSS選擇器引擎,用于查找與選擇器表達式匹配的元素集合)遍歷文檔,查找與之匹配的DOM元素,并創(chuàng)建一個包含了這些DOM元素引用的jQuery對象。
參考資料:百度百科 jQuery