首頁  >  核心  > jQuery.noConflict([ex])

返回值:jQuery jQuery.noConflict([extreme])

概述

執行這個函式將變數$的控制權讓渡給第一個實現它的那個庫。

這有助於確保jQuery不會與其他庫的$對像發生衝突。 在執行這個函式后,就只能使用jQuery變數訪問jQuery對象。例如,在要用到$("div p")的地方,就必須換成jQuery("div p")。 '''注意:'''這個函式必須在你匯入jQuery檔案之後,並且在匯入另一個導致衝突的庫'''之前'''使用。當然也應當在其他衝突的庫被使用之前,除非jQuery是最後一個匯入的。

參數

extreme Boolean V1.0

傳入 true 來允許徹底將jQuery變數還原

示例

描述:

將$引用的對象對映回原始的對象。

jQuery 程式碼:

jQuery.noConflict();
// 使用 jQuery
jQuery("div p").hide();
// 使用其他庫的 $()
$("content").style.display = 'none';

描述:

恢復使用別名$,然後建立並執行一個函式,在這個函式的作用域中仍然將$作為jQuery的別名來使用。在這個函式中,原來的$對象是無效的。這個函式對於大多數不依賴於其他庫的外掛都十分有效。

jQuery 程式碼:

jQuery.noConflict();
(function($) { 
  $(function() {
    // 使用 $ 作為 jQuery 別名的程式碼
  });
})(jQuery);
// 其他用 $ 作為別名的庫的程式碼

描述:

建立一個新的別名用以在接下來的庫中使用jQuery對象。

jQuery 程式碼:

var j = jQuery.noConflict();
// 基於 jQuery 的程式碼
j("div p").hide();
// 基於其他庫的 $() 程式碼
$("content").style.display = 'none';

描述:

完全將 jQuery 移到一個新的名稱空間。

jQuery 程式碼:

var dom = {};
dom.query = jQuery.noConflict(true);
結果:

// 新 jQuery 的程式碼
dom.query("div p").hide();
// 另一個庫 $() 的程式碼
$("content").style.display = 'none';
// 另一個版本 jQuery 的程式碼
jQuery("div > p").hide();