2011-12-13 132 views
-1

我在header.php一個jquery菜單。如果我在index.php文件中包含header.php文件,jquery無法正常工作。jQuery的不工作包括PHP文件

的header.php

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> 
<script type="text/javascript" src="dropdowncontent.js"></script> 
<script type="text/javascript" src="ddmegamenu.js"></script> 
<script> 
ddmegamenu.docinit({ 
menuid:'course', 
dur:800, 
easing:'easeInOutCirc' //<--no comma after last setting 
}) 
</script> 

的index.php

<body> 
<div id="mainwrapper"> 
<?php require_once("../header.php"); ?> 
</div> 
+3

哪裏是你的'head'標籤?另外,你可能想''(document).ready()''ddmegamnu'調用。 –

+1

從你的例子中很難說。如果你只是在index.php文件中直接使用JavaScript,這一切都可以工作嗎? –

+1

檢查您的控制檯是否有錯誤,確保正在加載腳本標記中所需的所有文件! –

回答

0

在你的PHP包括要更改目錄。確保您的<script src="">標籤反映了這一變化。

是:

<script type="text/javascript" src="dropdowncontent.js"></script> 
<script type="text/javascript" src="ddmegamenu.js"></script> 
在同一目錄 header.phpindex.php

2
<script> 
ddmegamenu.docinit({ 
    menuid:'course', 
    dur:800, 
    easing:'easeInOutCirc' //<--no comma after last setting 
}) 
</script> 

我不知道它是什麼做的,但要在代碼裏document.ready事件處理程序來觸發,

<script> 
$(document).ready(function(){ 
    ddmegamenu.docinit({ 
    menuid:'course', 
    dur:800, 
    easing:'easeInOutCirc' //<--no comma after last setting 
    }) 
}); 
</script> 
0

看起來像一個js語法錯誤,你忘了結束與您docinit功能;。另外,確保將jQuery包裝在文檔就緒函數中,或者在DOM準備好之前運行它。這是一個工作示例。

<script> 
$(document).ready(function(){ 
    ddmegamenu.docinit({ 
     menuid:'course', 
     dur:800, 
     easing:'easeInOutCirc' //<--no comma after last setting 
    }) 
}); 
</script> 

假設這是正確的jQuery,它應該可能運行。

如果沒有,請確保您包括在不同的目錄中的PHP文件,這可能是你的問題。我會說確保你正確地包含JavaScript文件。查看源代碼並單擊src URL進行驗證。在src =「」你有以下使用都指向一個相對路徑,在這種情況下,在當前目錄下,這樣你的dropdowncontent.js和ddmegamenu.js必須在同一目錄下的index.php

<script type="text/javascript" src="dropdowncontent.js"></script> 
<script type="text/javascript" src="ddmegamenu.js"></script> 
0

運行您的網頁,並檢查consolefirebug查看什麼是你的腳本爲什麼不運行的可能原因。否則你的代碼沒有理由不運行。它應該運行。也許你試圖包含的js文件不會出現在索引和頭文件所在的同一目錄中。也嘗試改變你的js是這樣的:

<script> 
$(document).ready(function(){ //add document.ready() 
    ddmegamenu.docinit({ 
    menuid:'course', 
    dur:800, 
    easing:'easeInOutCirc' //<--no comma after last setting 
    }); 
}); 
</script> 

希望這會有所幫助。

0

我有同樣的問題,並通過包括幾乎我所用的佈局結束的</body>標籤前的JS文件解決它。