2012-12-28 55 views
2

首先,我不是一個網絡專家,所以請忍受我的愚蠢!jQuery - 無法同時導入文件和自己的功能

我在我的一個PHP文件中使用了一個使用jQuery的菜單。它帶有一個外部.js文件。其實,這是gooeymenu。 我還爲我的頁面使用了另一個功能。

事情是:每當我嘗試使用我的功能或菜單,它就像一個魅力。但是在我的文件中將它們都放在一起只允許1個工作。

以下是我有:

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head> 

<body> 
----> <script src="jquery-1.8.3.min.js" type="text/javascript"></script> 
<script src="gooeymenu.js"></script> 

<link rel="stylesheet" type="text/css" href="gooeymenu.css" /> 
<ul id="gooeymenu3" class="underlinemenu"> 
    my list 
</ul> 

<script> 
    gooeymenu.setup({id:'gooeymenu3', fxtime:250}) 
</script> 

<script type="text/javascript"> 
    function myFunction(){...} 
</script> 

與以前的代碼,只有gooeymenu作品。從PHP代碼調用我的函數並不會觸發它應該執行的操作。

這裏現在來的另一種方式:

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head> 

<body> 
<script src="gooeymenu.js"></script> 
----> <script src="jquery-1.8.3.min.js" type="text/javascript"></script> 

<link rel="stylesheet" type="text/css" href="gooeymenu.css" /> 
<ul id="gooeymenu3" class="underlinemenu"> 
    my list 
</ul> 

<script> 
    gooeymenu.setup({id:'gooeymenu3', fxtime:250}) 
</script> 

<script type="text/javascript"> 
    function myFunction(){...} 
</script> 

而這個時候,我的功能工作正常,但沒有菜單(如jQuery的不是第一進口,但它意在顯示我的函數,它是明顯不工作當單獨)。注意jquery.js已經在兩個例子中被導入。無用的說,我已經嘗試過每一個組合,也擁有一切,甚至在它之上...

如果你們有任何想法拯救一個可憐的靈魂,我會很高興聽到它! 謝謝。

更新::

我有一個控制檯錯誤時,我的功能不起作用(從HTML觸發一個onClick)

Uncaught TypeError: Property '$' of object [object Window] is not a function 
myfunction 
onclick 

由於信息在這裏就是我在做的功能(我知道我可以避開jQuery的,但我不能在我的其他頁面,所以這是不是一個解決方案):

$("#adiv").html("..."); 
$("#adiv").fadeIn("slow"); 
+1

第二個例子是行不通的,因爲沒有加載jQuery的1.8.3.min.js ......這應該是在頂部.. – bipen

+0

你能分享gooeymenu.js?這似乎是問題所在。它使用jQuery嗎?如果是這樣,jQuery必須先到。你在哪裏打電話給你的功能? –

+0

這似乎很明顯,很顯示我的功能工作時,菜單被忽略... – PeterGriffin

回答

-1

首先gooeymenu似乎是一個jQuery插件。所以你的jQuery源需要先送入:

<script src="jquery-1.8.3.min.js" type="text/javascript"></script> 
<script src="gooeymenu.js"></script> 

下一個,你應該把所有的代碼的domready中投手中:

<script> 
$(document).ready(function() { 

    // your code here 
}); 
</script> 

最後我沒有看到你的函數「myFunction的」怎麼可能工作,因爲你不會把它叫到任何地方!?!?!

<script> 
$(document).ready(function() { 

    gooeymenu.setup({id:'gooeymenu3', fxtime:250}) 

    // declare the Function 
    function myFunction(){ 

    } 

    // and call it 
    myFunction(); 
}); 
</script> 
+0

我真的沒有看看爲什麼我的評論會得到一個downvote。當然,在noConflict模式下設置jQuery解決了你的問題,但是我的domready處理程序建議仍然有效,同時gooeymenu也不是它的體系結構中的一個好插件,所以你不應該使用它。 – hereandnow78