jQuery与dwr同用,怎么解决$符号冲突?

2025-01-25 07:59:35
推荐回答(2个)
回答1:

jQuery解决$符号冲突的最直接办法是:使用jQuery来代替$符号。

在Jquery中,$是jQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于jQuery('#msg')的写法。当我们引入多个js库后,在另外一个js库中也定义了$符号的话,那么我们在使用$符号时就发生了冲突就可以使用这种办法来解决。当然也可以采用下面的其他办法解决

1、修改DWR的$符号把dwr.jar文件后缀改成.rar文件,然后解压,找到util.js文件,打开。在文中找到:
var $;
if(!$){
$=dwr.util.by;
}
把$改成你想要改成的字符【dr】,然后保存。再把整个文件夹压缩。再把后缀改成.jar,OK!

2、自定义JQuery的别名,修改JQUERY的$符号
var $jQ= jQuery.noConflict();//自定义一个比较短快捷方式 JQuery
function showValue(){
alert($jQ("#jid").val());

}

回答2:

查了一下dwr的util.js源码,发现下面这句:
var $;
if (!$) {
$ = dwr.util.byId;
}
没错!这里就是dwr定义$的地方,把这断代码屏掉,重新定义了一下
var $$;
if (!$$) {
$$ = dwr.util.byId;
}
OK,这样你就能用$$来替换DWR中的$符号了。