Discuz和jQuery变量名冲突的3种解决方法

Discuz和jQuery变量名冲突的3种解决方法,第1张

Discuz和jQuery变量名冲突的3种解决方法

本文详细介绍了Discuz和jQuery之间用户标识符冲突的三种解决方案。在开发设计模板或插件时,经常会遇到这个问题。文中列举的三种方法都可以解决这个问题,你一定要参考。

由于之前第一次接触开发设计,做了一个插件,发现在本地检测安装应用的情况下,所有的下拉列表都不能应用。鼠标点击没有反映出一切,DIY无法应用。之后1314学习网解释是DZ和JQ的$冲突!通常,每个人在编写免费模板或插件时都会或多或少地使用JQ。还不清楚他们什么时候会遇到相互矛盾的问题。最近在网上找了很多教程的例子,现在分享给大家!

第一个答案:

1.应用的JS文档不需要修改
2。它在网页的顶部,也就是logo下面的第一行刚刚开始导入。是为了更好的保证在DZ默认设置JS之前加载JS。3.在这个JS文档中引入的区域把$改成jQuery(注意英文的大小写)。以上方法一般可以解决大部分JS兼容性问题。如果还是Miyo的解决方案,那就试试办法:把JS里的$jun全部换成jQuery。

第二个答案:

DZ使用s()作为目标选择函数,正好与jQuery设置的$()默认函数重叠,造成冲突。也是为了保持原有的DZ程序流程不变,所以我们要在JQ上进行修改。Jquery.js不需要修改这个文档。如果是引进的,可以修改。比如下面这段代码就是jq的代码。如果不加修改就马上用DZ,会有错误。


复制以下代码:
$("p")。点击(function(){
alert($(这个)。text()));
});
});</p>; <;p>$("PP")style.display='none';//应用原型
/]]><;/script>;

我们可以引入jQuery来授予JQ一个参数

复制以下代码:
varjq=jQuery.noconflict();</p>; <;p><scripttype="text/JavaScript">;//<;![CDATA[<;/p>; <;p>varjq=jquery.noconflict();
jq(function(){//applyjquery
jq("p")。点击(function(){
预警(jq(this)。text()));
});
});
jq("PP")style.display='none';//应用原型
/]]><;/script>;

替换后,解决js冲突应该是个难题。

第三个解决方案,W3C在线手册,与上面的类似:

http://www.w3school.com.cn/jquery/core_noconflict.asp

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/772381.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存