现在jquery漫天飞,用的人越来越多,一方面由于jquery本身的强大和易用,另一方面是得到了jquery社区的很多人支持。相信大家在开发Web项目的时候都或多或少地用到了jquery,尤其是那些非常成熟且强大的jquery插件。

我就曾经在意个项目中用到了3种以上的jquery插件,date picker, jzoom, easy slider…但是在整合到一个大页面的时候,冲突发生了。这时我们需要用到jquery中的一个函数:
jQuery.noConflict();

运行这个函数将变量$的控制权让渡给第一个实现它的那个库。
这有助于确保jQuery不会与其他库的$对象发生冲突。
在运行这个函数后,就只能使用jQuery变量访问jQuery对象。例如,在要用到$(”div p”)的地方,就必须换成jQuery(”div p”)。
注意:这个函数必须在你导入jQuery文件之后,并且在导入另一个导致冲突的库之前使用。当然也应当在其他冲突的库被使用之前,除非jQuery是最后一个导入的。

我们可以创建一个新的别名用以在接下来的库中使用jQuery对象,这样也可以避免冲突。
var j = jQuery.noConflict();
// 基于 jQuery 的代码
j(”div p”).hide();
// 基于其他库的 $() 代码
$(”content”).style.display = ‘none’;

详见:http://jquery-api-zh-cn.googlecode.com/svn/trunk/index.html

本Blog文章除特别声明之外皆为原创文章,欢迎转载,转载请注明: 转载自JSSAY'S BLOG

本文链接地址: http://www.jssay.com/blog/index.php/2010/05/10/jquery-plugin-conflict-over/


相关文章

标签:,

2 条评论


  1. miao on 11 五 2010

    偶最近也刚在系统学习jquery中…声明下,我的新款主题用的“发表日期”背景图片用你的了,呵呵,找了几个还是你这个“搭”点,thk

  2. Namesky on 30 十二 2010

    您的评论…哎,冲突真是个纠结的事的


发表评论