开发中视图层引入jquery很平常的场景,今天使用jquery的ajax在velocity中调用,出现视图错误,经查询,发现jQuery 的$与velocity视图技术有冲突,为此,解决方法有三种:
1、使用jQuery代替$。
如:jQuery.ajax();
缺点:不适合扩展,一旦替换成第三方库时,那就麻烦大发
2、使用jQuery.noConflict。
如:var j = jQuery.noConflict(); j.ajax();
缺点:当使用jQuery的相关插件时,会使得插件失效哦!
3、wrap jQuery中的冲突方法。
如$.ajax()在Velocity中会冲突,则重新定义如下:
function dw(){}
dw.ajax=function(s){
jQuery.ajax(s);
}
dw.ajax();
方案3基本上解决了1、2中的缺点~~~故推荐使用第三种方法!
转自https://blog.csdn.net/hantiannan/article/details/7651854?utm_source=blogxgwz5