簡體   English   中英

處理jQuery.noConflict

[英]Handling jQuery.noConflict

我繼承了這樣開始的腳本:

var $j = jQuery.noConflict();

但是我不知道為什么要這么做。 我了解我們正在嘗試解決沖突,但是如何找到要解決的沖突呢?

如果我們找不到實際的沖突,我們計划恢復為$而不是$j並查看是否出現任何沖突。

根據jQuery文檔

就像jQuery一樣,許多JavaScript庫都將$用作函數或變量名。 在jQuery的情況下,$只是jQuery的別名,因此無需使用$即可使用所有功能。 如果您需要在jQuery旁邊使用另一個JavaScript庫,請通過調用$ .noConflict()將$的控制權返回到另一個庫。 $的舊引用在jQuery初始化期間保存; noConflict()只是還原它們。

如果由於某些原因加載了兩個版本的jQuery(不建議這樣做),則從第二個版本調用$ .noConflict(true)將使全局范圍內的jQuery變量返回第一個版本的jQuery變量。

這是文檔的另一個鏈接 ,可以很好地解釋

簡單來說

var $j = jQuery.noConflict();

之后,我們進入無沖突模式,因此我們現在可以使用$ j代替$或jQuery,並且該代碼不會與使用$或jQuery的早期版本的Jquery或庫沖突

我們使用Jquery.noConflict是,當還有其他使用“ $ ”作為選擇器/函數/變量的javascript庫時。 如果您需要查找發生沖突的確切位置,則只需運行代碼而無需聲明Jquery.noConflict,並檢查是否出現了例外結果以及“開發人員”選項卡的控制台窗口。

一如既往,文檔是關鍵-https://api.jquery.com/jquery.noconflict/

$是用於jQuery的別名。 如果在您的應用程序中有時會出現將$用於其他用途的情況,那么您需要使用其他一些非沖突變量來防止沖突。

同樣,還有另一種情況,當您的應用程序或應用程序中的模塊中使用了多個版本的jQuery ,將導致沖突。 因此,您需要通過使用jQuery.noConflict();來避免沖突jQuery.noConflict();

您可以在jQuery.noConflict上閱讀有關它的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM