如何解決jQuery的美元$符號衝突問題

antzone發表於2017-03-07

大家都知道$符號是jquery的別名,於是以下兩端程式碼是等效的:

[JavaScript] 純文字檢視 複製程式碼
$("div").hide();
jQuery("div").hide();

其實jQuery也只是一個普通的js庫而已,它可以定義$,其他的庫也是可以定義的,如果它們同時使用的話,就有可能造成衝突,下面就介紹一下如何防止此衝突的出現。

一.使用全程而非別名:

使用jQuery這個全程而非使用$別名,這樣就可以防止衝突的出現了。

二.將$的控制權讓渡給其他庫:

[JavaScript] 純文字檢視 複製程式碼
JQuery.noConflict()

不過前提條件是jQuery庫在其他庫的後面引用。

當將$控制權讓渡給其他的庫之後,jQuery程式碼中就不能夠使用$,而是要使用jQuery或者自定義的別名。

[JavaScript] 純文字檢視 複製程式碼
var newJquery=JQuery.noConflict();

以上程式碼重新定義了一個別名newJquery,那麼就可以如下使用jQuery了:

[JavaScript] 純文字檢視 複製程式碼
newJquery("div").hide();

相關文章