關(guān)于“并且在導(dǎo)入另一個(gè)導(dǎo)致沖突的庫(kù)之前使用” 的一點(diǎn)疑問(wèn)
aron 好
“這個(gè)函數(shù)必須在你導(dǎo)入jQuery文件之后,并且在導(dǎo)入另一個(gè)導(dǎo)致沖突的庫(kù)之前使用?!?以上課件的高亮句子, 這句話是不是有點(diǎn)不準(zhǔn)確,
這邊前半句話, 這個(gè)函數(shù)必須在你導(dǎo)入jQuery文件之后, 這個(gè)可以理解,導(dǎo)入jQuery后,才能使用$.noConflict().
我這邊疑問(wèn)是后半句話,“并且在導(dǎo)入另一個(gè)導(dǎo)致沖突的庫(kù)之前使用”,這邊應(yīng)該可以在導(dǎo)入另一個(gè)導(dǎo)致沖突的庫(kù)之后使用吧。
比如
<script type="text/javascript" src="other.js"></script>
<script type="text/javascript" src="jquery-2.0.3.js"></script>
<script type="text/javascript">
? ?$.noConflict()
</script>
假設(shè)上面的other.js 也是使用的$,比jQ先導(dǎo)入,但是 $.noConflict() 這個(gè)執(zhí)行后,不是可以把之前保存好的_$ 賦值給window.$ 嗎?
這邊是不是把“并且在導(dǎo)入另一個(gè)導(dǎo)致沖突的庫(kù)之前使用?!备臑?“并且在使用($('xxx'))另一個(gè)導(dǎo)致沖突的庫(kù)之前使用”
2014-12-24
我們先看看$.noConflict()方法
在加載jquery的時(shí)候做了一個(gè)動(dòng)作?_$ = window.$; ?保存了當(dāng)前的$的引用為_(kāi)$, 因?yàn)榇藭r(shí)可能上一個(gè)script腳本可能存在$的命名空間。所以在當(dāng)前加載的時(shí)候就保存起來(lái)了
我們調(diào)用的時(shí)候就干了一件事
把當(dāng)前的jquery的命名空間$ 替換成_$,達(dá)到了交換的目的,可能話沒(méi)有表述清楚
2014-12-24
恩 這個(gè)交換的過(guò)程明白。