[Joomla] Joomla 1.5 中 JQuery造成相衝的解決方式

先屁話一下,最近忙了三四個月再搞網站,一樣使用Joomla來開發,這幾個月心得挺多的。很想跟各位分享一下Joomla的使用心得,原本打算開發網站完了再來一口氣介紹我所使用的工具。不過真的很怕自己會忘記,所以還是先想到就寫,其他部分等有空些在陸續補上介紹。

首先....

如果您有使用Joomla的擴展套件,有時候會碰到某個頁面有兩個具備JQuery特效的模組導致相衝而另一個特效失敗(檢查方式可以利用Chrome遊覽器做個偵錯)。這是因為匯入這個JQuery的Library被佔住了,只要把兩個呼叫JQuery的名稱給錯開就好。方法如下

  1. 開啟其中一個Code,如果不知道,可以檢查一下你的安裝包,再找找跟Jquery code有關的檔案在哪裡,像我的網站Menu跟Plugin有相衝,而我的Plugin(屬於Content類別)比較好找,就在\plugins\content\xxxx.php
  2. 找到有匯入JQuery的程式碼ex:
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
  3. 找到之後在下面給他多加一段code,變成
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
    <script type="text/javascript">< jQuery.noConflict(); </script>
  4. 接著後面部分有使用$這個參數的都要改成jQuery(因為名稱已經變了),譬如
    $(document).ready(function() → jQuery(document).ready(function()
    ...
    $(\"div.".$classname."\").hover(function() → jQuery(\"div.".$classname."\").hover(function()
    ...
  5. 如果不太會找沒關係,只要找跟JavaScript有關的範圍內,尋找$(oxox....)之類的就好,用notepad++查找會更方便,因為都是灰色字體。
  6. 接著存檔檢查一下網頁,兩邊的JQuery特效都正常囉~~~

留言