亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jquery插件源碼問題

jquery插件源碼問題

瀟瀟雨雨 2019-05-25 13:34:24
誰能解釋一下這段代碼的具體作用。我大體知道是解決變量沖突,namespase相關的東西(function(factory){if(typeofdefine==='function'&&define.amd){define(['jquery'],factory);}else{factory(window.jQuery||window.Zepto||window.$);};}(function($){//具體代碼}
查看完整描述

2 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

判斷js文件中的$的變量名沖突,檢查工廠函數jQuery是否存在,如果不存在,則$優先表示jQuery的$,其次是zepto,然后是window的全局變量這個一般會顯示在封裝好的插件中,因為引入插件,難免有時會有jQuery的$沖突,這個時候如果沖突了,插件中的$就替換成jQuery
                            
查看完整回答
反對 回復 2019-05-25
?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

if(typeofdefine==='function'&&define.amd){
define(['jquery'],factory);
}
判斷是否是通過AMD加載方式加載的jquery,如果是AMD,則傳入插件方法作為callback,接受AMD加載的jquery對象
else{
factory(window.jQuery||window.Zepto||window.$);
};
如果沒有通過AMD加載,則直接從全局依次尋找jQuery、Zepto、$,然后傳入插件方法全局的這個對象
                            
查看完整回答
反對 回復 2019-05-25
  • 2 回答
  • 0 關注
  • 403 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號