国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

Discuz和jQuery變量名沖突的3種解決方法

2016-12-12 17:20:41 7341

Discuz和jQuery變量名沖突的3種解決方法


這篇文章主要介紹了Discuz和jQuery變量名沖突的3種解決方法,在開(kāi)發(fā)模板或?插件時(shí)經(jīng)常遇到這個(gè)問(wèn)題,本文列出的3種方法都可以解決這個(gè)問(wèn)題,需要的朋友可以參考下


緣起于之前自己初次接觸開(kāi)發(fā),做了一款插件,本地測試安裝使用的時(shí)候發(fā)現所有的下拉菜單都不能夠使用,鼠標點(diǎn)擊沒(méi)有任何反應,DIY也不能夠使用,后來(lái)經(jīng)1314學(xué)習網(wǎng)解答說(shuō)明是DZ和JQ的$沖突!大家平時(shí)在寫(xiě)模版或者插件的時(shí)候多多少少都會(huì )使用JQ,不知道什么時(shí)候就會(huì )遇到?jīng)_突性問(wèn)題,最近在網(wǎng)上找了很多相關(guān)教程,現在與大家進(jìn)行分享!

第一種答案:

1、使用到的JS文件無(wú)需修改

2、在頁(yè)面的最頭部,也就是標簽下的第一行開(kāi)始引入,這是為了能確保該JS加載在DZ默認JS之前。 3、在引用到該JS文件的地方建$改成 jQuery(注意大小寫(xiě))。 如上方式,一般都能解決大部分的JS不兼容情況。如果還是米喲解決的話(huà)嘗試一下方法: 將用到的JS里面的所有$君替換成jQuery。

第二種答案:

DZ使用了S()作為對象選取函數,剛好與jQuery默認的$()函數重合造成沖突,同樣也是為了保持原有的DZ程序不被更改,所以我們要在JQ上修改了。jquery.js 不需要修改這個(gè)文件。只要在引用的時(shí)候修改一下即可。例如以下代碼 是jq 的代碼。如?不做修改直接用入DZ會(huì )報錯。

代碼下:


<script type="text/javascript">// <![CDATA[</p> <p>$j(function(){ //使用jQuery 
$("p").click(function(){ 
alert( $(this).text() ); 
}); 
}); </p> <p>$("pp").style.display = 'none'; //使用prototype 
// ]]></script>

我們可以引用jQuery給JQ賦予一個(gè)變量

代碼如下:


var jq = jQuery.noConflict();</p> <p><script type="text/javascript">// <![CDATA[</p> <p>var jq = jQuery.noConflict(); 
jq(function(){ //使用jQuery 
jq("p").click(function(){ 
alert( jq(this).text() ); 
}); 
}); 
jq("pp").style.display = 'none'; //使用prototype 
// ]]></script>


替換之后應該是解決js沖突問(wèn)題。


提交成功!非常感謝您的反饋,我們會(huì )繼續努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題:
-->