jQuery - 无法同时获取导入的文件和自己的函数

时间:2012-12-28 10:46:11

标签: javascript jquery plugins menu

首先,我远不是网络专家,所以请忍受我的愚蠢!

我在我的一个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没有先导入,但它的意思是显示我的功能单独工作时才能工作)。请注意在2个示例中导入了jquery.js的位置。毫无疑问,我已经尝试了每一个组合,也包括在其中甚至更高的一切......

如果你们中任何一个人想要拯救一个可怜的灵魂,我会很高兴听到它! 感谢。

更新::

当我的功能不起作用时(我在HTML上的onClick上触发)

,我确实遇到了控制台错误
Uncaught TypeError: Property '$' of object [object Window] is not a function 
myfunction 
onclick

这里的信息是我在我的函数中所做的事情(我知道我可以避免使用jQuery,但我不能在其他页面中这样做,所以这不是解决方案):

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

2 个答案:

答案 0 :(得分:1)

最终找到了解决方案,猜测我在Chrome上发生问题非常不吉利。

Solution from Stackoverflow

答案 1 :(得分:-1)

首先gooeymenu似乎是一个jquery插件。所以你的jQuery源需要先加载:

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

接下来你应该将所有代码放在domReady-Hander中:

<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>