jQuery.noConflict() 导致另一个脚本出错
jQuery.noConflict() causing error in another script
我正在将此代码用于此插件 http://unwrongest.com/projects/defaultvalue/
// <![CDATA[
$.noConflict();
jQuery(document).ready(function(){
jQuery('.defaultval').defaultValue();
});
// ]]>
$.noConflict();
正在此行的另一个脚本中给我$ is not a function
$( "#city" ).autocomplete({
"autocomplete"是用于jquery UI自动完成插件 http://jqueryui.com/demos/autocomplete/#remote-jsonp
如何解决此问题?删除$.noConflict();
似乎可以解决它,但我想离开,因为我认为它是有原因的。
noConflict
函数删除了 jQuery 的$
别名,以允许其他库改用$
。
您不能将noConflict
与使用 $
的代码一起使用,除非您通过编写(function($) { ... })(jQuery);
将该代码包装在具有自己的 $
别名的函数中
您需要将自动
完成放在它自己的私有闭包中:
var jQueryVariableForMyUseOnly = jQuery.noConflict();
(function($){
$(...).autocomplete(...);
})(jQueryVariableForMyUseOnly);
只需更改以下内容:
$( "#city" ).autocomplete({
对此:
jQuery( "#city" ).autocomplete({
noConflict 删除了 $ 上的别名,但 jQuery 仍然存在。
编辑:或者,您可以将别名分配给其他内容,例如:
$j = $.noConflict();
$j("#city").autocomplete({
将其
更改为:
jQuery.noConflict();
编辑:重新阅读您的问题后。 这解决不了任何问题。 这里没什么可看的。