由于JQuery的效果很好,在制作模板时难免会用到各种jquery效果。可是做过模板的人就会发现加上自己的juery代码后,discuz自带的一些下拉功能就不可以使用了,其实原因就是discuz和JQuery的$发生冲突,导致有些功能失效。在网上找了一些资料整理了一下,希望能够帮到大家,同时也希望discuz能尽快解决这个问题。

方法一:

  1. 在页面的最头部,也就是<head>标签下的第一行开始引入我们用到的JQuery文件,这是为了能确保该JS可以在DZ默认JS之前加载。
  2. 在引用到该JS文件的地方把$改成 jQuery(注意大小写)。

如上方式,一般都能解决大部分的JS不兼容情况。如果还是米哟解决的话尝试一下方法:

将用到的JS里面的所有$全部替换成jQuery。

方法二:

DZ使用了$()作为对象选取函数,刚好与jQuery默认的$()函数重合造成冲突,同样也是为了保持原有的DZ程序不被更改,所以我们要在JQ上修改了。不需要修改jquery.js这个文件。只要在引用的时候修改一下即可。

<script src="style/js/jquery.js" type="text/javascript"></script>

这是引用一个jquery核心文件,然后在其下面加上:

<script type="text/javascript">var CMSZS_JQ = jQuery.noConflict();</script>

红色字体CMSZS_JQ自定义的,主要就是要注意大小写。

然后把我们使用的js文件里面的所有$都换成我们自定义的这个值CMSZS_JQ,大小写要相同。

建议使用第二种方法,如果要用到多个版本的JQ文件的话,就是在每个下面加上这句就好了。如:

<script src="style/js/jquery.1.4.2.js" type="text/javascript"></script>

<script type="text/javascript">var CMSZS_JQ = jQuery.noConflict();</script>

<script src="style/js/jquery.1.7.2.js" type="text/javascript"></script>

<script type="text/javascript">var CMS_JQ = jQuery.noConflict();</script>

注意:只要两个自定义的值不相同,各自使用的js语句里面把$改成相应的值就OK了。

黄聪:Discuz自制模板带jquery时与discuz本身冲突解决办法的更多相关文章

  1. 黄聪: $(document).click() 在iphone上不触发事件解决办法

    解决方案:加上 touchstart 事件 $(document).on(“click touchstart”, “.name”, function() { alert(“name”); });  

  2. 黄聪:PHP发送邮件出现Connection: opening to ssl://的解决办法

    PHP.ini文件开启下面2个功能: extension=php_sockets.dll extension=php_openssl.dll

  3. 黄聪:Mysql开启InnoDB引擎出现1067错误的解决办法

    在my.ini文件添加下面这行: innodb_force_recovery = 1 可以解决:InnoDB: Attempted to open a previously opened tables ...

  4. jQuery库冲突解决办法

    一次面试中面试官问到jQuery解决怎么冲突?虽然以前看过,但是我已经不记得了. 我的思路就是如果让我来设计,那我就用一个默认值$,不传参数,那就用$,最后就挂载在window.$上,传参数就用传入名 ...

  5. Jquery库及其他库之间的$命名冲突解决办法

    首先我们应该知道,在jquery中,$(美元符号)就是jquery的别名,也就是说使用$和使用jquery是一样的,在很多时候我们命名空间时,正是因为这个$而产生的冲突的发生.比如说:$('#xmla ...

  6. TP5本地运行正常,线上运行某页面出现【模板文件不存在】问题的解决办法

    相信许多小伙伴和我一样,明明在本地运行页面一切正常,而到线上(本人是用的虚拟主机)出现了如下图的问题: 其实这个问题出现的原因很简单,就是我们开发是在windows 系统下,windows系统对大小写 ...

  7. 黄聪:GeckoFX如何引用jquery文件并执行自定义JS

    var jquery_script = gwb.Document.CreateElement("script"); jquery_script.SetAttribute(" ...

  8. jQuery UI与jQuery easyUI的冲突解决办法

    jQuery UI与jQuery easyUI都是基于jQuery开发的.难免里面会有些方法名冲突! 因此对jQuery.easyui其中的两个方法名:resizable 和 draggable进行替 ...

  9. jquery与自己写的js文件冲突解决办法

    先加载JQUERY,然后使用语句  jQuery.noConflict(); 再加载其他JS文件,后面在使用jQuery时都换下,如:$('#div') 换成 jQuery('#div'), 如果嫌j ...

随机推荐

  1. JS初学之-代码精简思路

    1.差不多的代码,观察其不一样的地方,使用变量存起来,方便替代. 2.将其存入函数之中方便调用.

  2. html5的改进与沿革

    HTML5提供了一些新的元素和属性,例如<nav>(网站导航块)和<footer>.这种标签将有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视障人士使用,除此之外,还为其 ...

  3. Makefile---make内嵌函数及make命令显示 (九)

    原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/ 这一节我们讲一下make的函数,在之前的章节已经讲到了几个函数:wildcard.patsubs ...

  4. img元素底部有空白间距的问题

    <div style="width:100px;height:100px"><img src="./1.jpg"></div> ...

  5. ABBYY FineReader 12 能够识别哪些文档语言

    ABBYY FineReader可以识别单语言文本和多语言文本(如使用两种及以上语言).对于多语言文本,需要选择多种识别语言. 要为文本指定一种 OCR 语言,请从主工具栏或任务窗口的文档语言下拉列表 ...

  6. Visual Studio 2013 Web开发、新增功能:“Browser Link”

    微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013. ...

  7. linux概念之/dev/shm

    Linux默认(CentOS)/dev/shm分区的大小是系统物理内存的50%, 虽说使用/dev/shm对文件操作的效率会高很多,但是目前各发行软件中却很少有使用它的(除了前面提到的Oracle), ...

  8. Response.Redirect在新窗口打开网页

    来自:http://www.woosky.net/show.asp?id=761 Respose.Write("<script language='javascript'>win ...

  9. OpenJudge 计算概论-判断闰年

    /*======================================================================== 判断闰年 总时间限制: 1000ms 内存限制: ...

  10. 图片加载js类库

    Picturefill Picturefill.WP插件利用picturefill.js脚本展示Responsive图片,即根据视口宽度选择尺寸合适的图片加载,节省带宽,提高网站载入速度.例如用户用手 ...