# jQuery 核心 - noConflict() 方法
## 實例
使用 noConflict() 方法為 jQuery 變量規定新的名稱:
```
var jq=$.noConflict();
```
## 定義和用法
noConflict() 方法讓渡變量 $ 的 jQuery 控制權。
該方法釋放 jQuery 對 $ 變量的控制。
該方法也可用于為 jQuery 變量規定新的自定義名稱。
提示:在其他 JavaScript 庫為其函數使用 $ 時,該方法很有用。
### 語法
```
jQuery.noConflict(_removeAll_)
```
| 參數 | 描述 |
| --- | --- |
| _removeAll_ | 布爾值。指示是否允許徹底將 jQuery 變量還原。 |
### 說明
許多 JavaScript 庫使用 $ 作為函數或變量名,jQuery 也一樣。在 jQuery 中,$ 僅僅是 jQuery 的別名,因此即使不使用 $ 也能保證所有功能性。假如我們需要使用 jQuery 之外的另一 JavaScript 庫,我們可以通過調用 $.noConflict() 向該庫返回控制權:
```
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
// 使用另一個庫的 $ 的代碼
</script>
```
可以與 .ready() 方法結合起來使用,來為 jQuery 對象起別名,這項技術非常有效:
```
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($) {
// 使用 jQuery $ 的代碼
});
// 使用其他庫的 $ 的代碼
</script>
```
此外,通過向該方法傳遞參數 true,我們可以將 $ 和 jQuery 的控制權都交還給原來的庫。用之前請考慮清楚!
這是相對于簡單的 noConflict 方法更極端的版本,因為這將完全重新定義 jQuery。這通常用于一種極端的情況,比如你想要將 jQuery 嵌入一個高度沖突的環境。注意:調用此方法后極有可能導致插件失效。
## 實例
### 例子 1
將 $ 引用的對象映射回原始的對象:
```
jQuery.noConflict();
jQuery("div p").hide(); // 使用 jQuery
$("content").style.display = "none"; // 使用其他庫的 $()
```
### 例子 2
恢復使用別名 $,然后創建并執行一個函數,在這個函數的作用域中仍然將 $ 作為 jQuery 的別名來使用。在這個函數中,原來的 $ 對象是無效的。這個函數對于大多數不依賴于其他庫的插件都十分有效:
```
jQuery.noConflict();
(function($) {
$(function() {
// 使用 $ 作為 jQuery 別名的代碼
});
})(jQuery);
... // 其他用 $ 作為別名的庫的代碼
```
### 例子 3
可以將 jQuery.noConflict() 與簡寫的 ready 結合,使代碼更緊湊:
```
jQuery.noConflict()(function(){
// 使用 jQuery 的代碼
});
... // 其他庫使用 $ 做別名的代碼
```
### 例子 4
創建一個新的別名用以在接下來的庫中使用 jQuery 對象:
```
var j = jQuery.noConflict();
j("div p").hide(); // 基于 jQuery 的代碼
$("content").style.display = "none"; // 基于其他庫的 $() 代碼
```
### 例子 5
完全將 jQuery 移到一個新的命名空間:
```
var dom = {};
dom.query = jQuery.noConflict(true);
```
結果:
```
dom.query("div p").hide(); // 新 jQuery 的代碼
$("content").style.display = "none"; // 另一個庫 $() 的代碼
jQuery("div > p").hide(); // 另一個版本 jQuery 的代碼
```
- jQuery 參考手冊 - 選擇器
- jQuery 參考手冊 - 事件
- jQuery 事件 - bind() 方法
- jQuery 事件 - blur() 方法
- jQuery 事件 - change() 方法
- jQuery 事件 - click() 方法
- jQuery 事件 - dblclick() 方法
- jQuery 事件 - delegate() 方法
- jQuery 事件 - die() 方法
- jQuery 事件 - error() 方法
- jQuery 事件 - isDefaultPrevented() 方法
- jQuery 事件 - pageX 屬性
- jQuery 事件 - pageY 屬性
- jQuery 事件 - preventDefault() 方法
- jQuery 事件 - result 屬性
- jQuery 事件 - target 屬性
- jQuery 事件 - timeStamp 屬性
- jQuery 事件 - type 屬性
- jQuery 事件 - which 屬性
- jQuery 事件 - focus() 方法
- jQuery 事件 - keydown() 方法
- jQuery 事件 - keypress() 方法
- jQuery 事件 - keyup() 方法
- jQuery 事件 - live() 方法
- jQuery 事件 - load() 方法
- jQuery 事件 - mousedown() 方法
- jQuery 事件 - mouseenter() 方法
- jQuery 事件 - mouseleave() 方法
- jQuery 事件 - mousemove() 方法
- jQuery 事件 - mouseout() 方法
- jQuery 事件 - mouseover() 方法
- jQuery 事件 - mouseup() 方法
- jQuery 事件 - one() 方法
- jQuery 事件 - ready() 方法
- jQuery 事件 - resize() 方法
- jQuery 事件 - scroll() 方法
- jQuery 事件 - select() 方法
- jQuery 事件 - submit() 方法
- jQuery 事件 - toggle() 方法
- jQuery 事件 - trigger() 方法
- jQuery 事件 - triggerHandler() 方法
- jQuery 事件 - unbind() 方法
- jQuery 事件 - undelegate() 方法
- jQuery 事件 - unload 屬性
- jQuery 參考手冊 - 效果
- jQuery 效果 - animate() 方法
- jQuery 效果 - clearQueue() 方法
- jQuery 效果 - fadeIn() 方法
- jQuery 效果 - fadeOut() 方法
- jQuery 效果 - fadeTo() 方法
- jQuery 效果 - hide() 方法
- jQuery 效果 - show() 方法
- jQuery 效果 - slideDown() 方法
- jQuery 效果 - slideToggle() 方法
- jQuery 效果 - slideUp() 方法
- jQuery 效果 - stop() 方法
- jQuery 效果 - toggle() 方法
- jQuery 參考手冊 - 文檔操作
- jQuery 屬性操作 - addClass() 方法
- jQuery 文檔操作 - after() 方法
- jQuery 文檔操作 - append() 方法
- jQuery 文檔操作 - appendTo() 方法
- jQuery 屬性操作 - attr() 方法
- jQuery 文檔操作 - before() 方法
- jQuery 文檔操作 - clone() 方法
- jQuery 文檔操作 - detach() 方法
- jQuery 文檔操作 - empty() 方法
- jQuery 屬性操作 - hasClass() 方法
- jQuery 文檔操作 - html() 方法
- jQuery 文檔操作 - insertAfter() 方法
- jQuery 文檔操作 - insertBefore() 方法
- jQuery 文檔操作 - prepend() 方法
- jQuery 文檔操作 - prependTo() 方法
- jQuery 文檔操作 - remove() 方法
- jQuery 屬性操作 - removeAttr() 方法
- jQuery 屬性操作 - removeClass() 方法
- jQuery 文檔操作 - replaceAll() 方法
- jQuery 文檔操作 - replaceWith() 方法
- jQuery 文檔操作 - text() 方法
- jQuery 屬性操作 - toggleClass() 方法
- jQuery 文檔操作 - unwrap() 方法
- jQuery 屬性操作 - val() 方法
- jQuery 文檔操作 - wrap() 方法
- jQuery 文檔操作 - wrapAll() 方法
- jQuery 文檔操作 - wrapInner() 方法
- jQuery 參考手冊 - 屬性操作
- jQuery 參考手冊 - CSS 操作
- jQuery CSS 操作 - css() 方法
- jQuery CSS 操作 - height() 方法
- jQuery CSS 操作 - offset() 方法
- jQuery CSS 操作 - offsetParent() 方法
- jQuery CSS 操作 - position() 方法
- jQuery CSS 操作 - scrollLeft() 方法
- jQuery CSS 操作 - scrollTop() 方法
- jQuery CSS 操作 - width() 方法
- jQuery 參考手冊 - Ajax
- jQuery ajax - ajax() 方法
- jQuery ajax - ajaxComplete() 方法
- jQuery ajax - ajaxError() 方法
- jQuery ajax - ajaxSend() 方法
- jQuery ajax - ajaxSetup() 方法
- jQuery ajax - ajaxStart() 方法
- jQuery ajax - ajaxStop() 方法
- jQuery ajax - ajaxSuccess() 方法
- jQuery ajax - get() 方法
- jQuery ajax - getJSON() 方法
- jQuery ajax - getScript() 方法
- jQuery ajax - load() 方法
- jQuery ajax - param() 方法
- jQuery ajax - post() 方法
- jQuery ajax - serialize() 方法
- jQuery ajax - serializeArray() 方法
- jQuery 參考手冊 - 遍歷
- jQuery 遍歷 - add() 方法
- jQuery 遍歷 - andSelf() 方法
- jQuery 遍歷 - children() 方法
- jQuery 遍歷 - closest() 方法
- jQuery 遍歷 - contents() 方法
- jQuery 遍歷 - each() 方法
- jQuery 遍歷 - end() 方法
- jQuery 遍歷 - eq() 方法
- jQuery 遍歷 - filter() 方法
- jQuery 遍歷 - find() 方法
- jQuery 遍歷 - first() 方法
- jQuery 遍歷 - has() 方法
- jQuery 遍歷 - is() 方法
- jQuery 遍歷 - last() 方法
- jQuery 遍歷 - map() 方法
- jQuery 遍歷 - next() 方法
- jQuery 遍歷 - nextAll() 方法
- jQuery 遍歷 - nextUntil() 方法
- jQuery 遍歷 - not() 方法
- jQuery 遍歷 - offsetParent() 方法
- jQuery 遍歷 - parent() 方法
- jQuery 遍歷 - parents() 方法
- jQuery 遍歷 - parentsUntil() 方法
- jQuery 遍歷 - prev() 方法
- jQuery 遍歷 - prevAll() 方法
- jQuery 遍歷 - prevUntil() 方法
- jQuery 遍歷 - siblings() 方法
- jQuery 遍歷 - slice() 方法
- jQuery 參考手冊 - 數據
- jQuery 遍歷 - clearQueue() 方法
- jQuery 數據 - data() 方法
- jQuery 數據 - jQuery.data() 方法
- jQuery 遍歷 - dequeue() 方法
- jQuery 遍歷 - jQuery.dequeue() 方法
- jQuery 遍歷 - hasData() 方法
- jQuery 遍歷 - queue() 方法
- jQuery 遍歷 - jQuery.queue() 方法
- jQuery 數據 - removeData() 方法
- jQuery 數據 - jQuery.removeData() 方法
- jQuery 參考手冊 - DOM 元素方法
- jQuery DOM 元素方法 - get() 方法
- jQuery DOM 元素方法 - index() 方法
- jQuery DOM 元素方法 - size() 方法
- jQuery DOM 元素方法 - toArray() 方法
- jQuery 參考手冊 - 核心
- jQuery 核心 - jQuery() 方法
- jQuery 核心 - noConflict() 方法
- jQuery 參考手冊 - 屬性
- jQuery context 屬性
- jQuery jquery 屬性
- jQuery jQuery.fx.interval 屬性
- jQuery jQuery.fx.off 屬性
- jQuery jQuery.support 屬性
- jQuery length 屬性
- 免責聲明