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

為了賬號安全,請及時綁定郵箱和手機立即綁定

還是不懂怎么把$交出去的。。

Var?_jQuery?=?window.jQuery,
????_$?=?window.$;

jQuery.noConflict?=?function(?deep?)?{
????if?(?window.$?===?jQuery?)?{
????????window.$?=?_$;
????}
if?(?deep?&&?window.jQuery?===?jQuery?)?{
????????window.jQuery?=?_jQuery;
????}
????return?jQuery;
};

看了半天還是沒懂怎么實現把$交出去的。。完全沒理解。。。望大神解答具體的流程。。

正在回答

4 回答

之前的_$和_jQuery是沒有內容的

0 回復 有任何疑惑可以回復我~
var
	//?Map?over?jQuery?in?case?of?overwrite
	_jQuery?=?window.jQuery,

	//?Map?over?the?$?in?case?of?overwrite
	_$?=?window.$;
	
//?這邊是說保存jQuery和$以防被重寫覆蓋了,這些代碼是jq引入時自執行的,
//?此時的window.jQuery或window.$都很有可能是undefined,如果引入jq之前沒有其他庫使用了$和jQuery,
//?$.noConfilct()這種用法就是?將引入jq之前的window.$?賦值給window.$,乍看很奇怪,其實就是
//?通過?上面的_$?=?window.$先保存,?然后$.noConfilct()里面,?window.$?=?_$,?此時就完成了
//?jq庫放棄window.$的使用權,??此時window.$是什么呢,?在引入jq之前,?$是什么,現在就是什么,
//?比如undefined?或者是prototype.js中的$

//?同理如果$.noConfilct(true)?那么jq庫也放棄了window.jQuery的使用權

jQuery.noConflict?=?function(?deep?)?{
	if?(?window.$?===?jQuery?)?{
		window.$?=?_$;
	}

	if?(?deep?&&?window.jQuery?===?jQuery?)?{
		window.jQuery?=?_jQuery;
	}

	return?jQuery;
};


10 回復 有任何疑惑可以回復我~
#1

proto

這個解釋的對。
2016-05-02 回復 有任何疑惑可以回復我~
#2

proto

這個要給人家置頂啊這么好的答案
2016-05-02 回復 有任何疑惑可以回復我~

我也不是很理解,這段代碼應該是把$ 和jQuery保存到未定義的_$和——jQuery中,然后判斷是否已經解析完function后,如果執行noConfilct就把那個undefined的東東穿給$

0 回復 有任何疑惑可以回復我~

汗。。再看了看又理解了。。腦子沒轉過來 哈哈哈

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

還是不懂怎么把$交出去的。。

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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