• 注册
  • DZ代码 DZ代码 关注:0 内容:15

    jQuery 与 Discuz!冲突的解决方案

  • 查看作者
  • 打赏作者
    • DZ代码
    • Lv.16
      中国加油

      先说原理。因为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文件

      请登录之后再进行评论

      登录

      WordPress后台-外观-小工具 进行配置小工具

    • 做任务
    • 实时动态
    • 暗黑模式