2012-07-13 120 views
0

在Joomla 2.5中,我安裝了DirectPHP,我已經在Joomla 1.6中廣泛使用它將Joomla文章中嵌入PHP。它工作得很好。我通常只是一個包含在文章中,像這樣的:Joomla 2.5不通過文章加載JS腳本?

<?php 
    include "my_cool_script.php"; 
?> 

然後,我讓我的代碼my_cool_script.php。有一件事我經常做的就是在頁面中包含更多的JS或CSS腳本,通過正確的文章,但把以下幾行my_cool_script.php

<link rel="stylesheet" type="text/css" media="screen" href="/scripts/css/dark-hive/jquery-ui-1.8.21.custom.css" /> 
<link rel="stylesheet" type="text/css" media="screen" href="/scripts/css/ui.jqgrid.css" /> 
<script src="/scripts/js/jquery-1.7.2.min.js" type="text/javascript"></script> 
<script src="/scripts/js/jquery-ui-1.8.21.custom.min.js" type="text/javascript"></script> 
<script src="/scripts/js/i18n/grid.locale-en.js" type="text/javascript"></script> 
<script src="/scripts/js/jquery.jqGrid.src.js" type="text/javascript"></script> 

這一直在過去的工作,與Joomla 1.6。現在在Joomla 2.5安裝。在文章中加載了PHP和HTML的其餘部分,並且加載腳本時頁面上沒有任何錯誤。我看HTML代碼,我可以看到上面的代碼寫入頁面,但我無法訪問任何jQuery函數,如腳本未加載。我嘗試使用任何jQuery語法時遇到錯誤。我知道這個腳本正在工作,因爲我剛剛從另一個站點移動它,運行joomla 1.5到2.5。

有沒有人知道爲什麼腳本沒有加載?

編輯

嗯,我想劇本加載,但它並沒有像所使用的$符號。我將它們全部更改爲jQuery,它工作。

+0

可能與它們結束在文檔的主體結構中的某個地方有關。這種行爲在瀏覽器中是否一致? – mariusnn 2012-07-13 01:54:08

+0

很好的問題,我在Ubuntu上使用Chromium,我可以檢查Firefox,是的,同樣的事情發生在Firefox – 2012-07-13 01:57:12

+0

如果你直接對它們進行處理,腳本的負載是多少? I.e http://yoursite.com/scripts/js/jquery-1.7.2.min.js – mariusnn 2012-07-13 02:03:15

回答

1

我不確定究竟是爲什麼,但也許在我的安裝中存在一些衝突,並且$符號正如其通常那樣被識別,表示我們是dong jQuery。所以我在我的PHP腳本中將所有$更改爲jQuery,並且所有jQuery似乎都在工作。

1

Mootools(Joomla的JavaScript默認框架,直到版本2.5)也使用'$',所以如果你不知道你正在運行依賴於兩個框架的腳本,它很容易遇到一些複雜情況。如上所述,您可以使用'jQuery'而不是'$',並使用jQuery.noConflict();命令爲其他人釋放'$'。

乾杯。