先说原理。因为Discuz中,所有的Js文件均采用了$( ) 作为对象选取函数,这中方式与jQuery默认的$( )函数重合从而导致冲突,这种冲突会导致Discuz的部分功能无法正常使用,下面就提供两种方式来解决这样的冲突问题。
方法一:
1、使用到的.js文件无需修改
2、在页面的最头部,也就是<head>标签下的第一行开始引入需要用到的.js文件,这是为了能确保该.js文件可以在Discuz默认.js文件之前加载。
3、在引用到该.js文件的地方把$改成 jQuery(注意大小写)。
方法二:
<script src="jQuery.js" type="text/javascript"></script>
这是引用一个jQuery核心文件,然后在其下面加上:
<script type="text/javascript">var jQuery = jQuery.noConflict();</script>
这里所写入的 jQuery 是自定义名称,可以根据自己的需求做修改。
最后在模板中,只需要把<script></script>里面所有的 $ 替换为 jQuery 即可。
以上两种方案都不需要修改jQuery封包以及Discuz的.js文件