Kivinzi cha jQuery - methodi ya noConflict()
实例
Tumia methodi ya noConflict() kufikiria jina mpya kwa kina cha jQuery:
var jq=$.noConflict();
Maelezo na matumizi
Methodi ya noConflict() inafikiria uaminifu wa kina cha $ cha jQuery.
Hii methodi inafaulu kufungua uaminifu wa kina cha $ cha jQuery.
Hii methodi inaweza kutumika pia kwa kufikiria jina mpya kwa kina cha jQuery.
Tahadhari:Inafaa sana kwa masaa kama kitabu cha kwanza cha JavaScript kinatumia $ kwa mafaa yake.
Mafano
jQuery.noConflict(kufungua zote)
Parama | Maelezo |
---|---|
kufungua zote | Kipya cha boole. Inaeleza iwapo inaruhusiwa kurejea kina cha jQuery kwa kawaida. |
Maelezo
Mambo mengi ya JavaScript inatumia $ kama jina la mafaa au variable, jQuery pia ina hivyo. Kwenye jQuery, $ ina uhusiano na jQuery, kwa hiyo inaweza kufikirika kwamba inafaa zaidi bila kutumia $ kwa sababu inafaa zaidi.
<script type="text/javascript" src="other_lib.js"></script> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $.noConflict(); // Mafaa kwa kitabu cha kwanza cha $ </script>
Inaweza kutumika na methodi ya .ready() kwa kumfanya kipenda kwa jina la kifaa cha jQuery, teknolojia hii ina ufanisi mkubwa:
<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($) { // Mafaa kwa $ cha jQuery }); // Mafaa kwa kitabu cha kwanza cha $ </script>
Hadiweza kufikia kwa kutoa thamani ya true kwa hii methodi, tunaweza kuweka uaminifu wa $ na jQuery kwa kuzuruka kwa kitabu cha asili. Tafadhali, mtaarifu kwa kuzungumza!
这是相对于简单的 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(); // Kielezo cha jQuery $("content").style.display = "none"; // Kielezo cha $() cha eneo lingine la kitabu cha kuelezea
Mfano 5
Inaongea kwa upya kwa jQuery kwa eneo lingine la kifaa cha jina:
var dom = {}; dom.query = jQuery.noConflict(true);
Matokeo:
dom.query("div p").hide(); // Kielezo cha jQuery jipya $("content").style.display = "none"; // Kielezo cha $() cha eneo lingine la $ jQuery("div > p").hide(); // Version ya pili ya jQuery ya kielezo