Jquery问题 - 菜单不起作用

时间:2009-10-15 12:10:52

标签: jquery-plugins

我正在尝试让lavalamp菜单在主题中运行,但它似乎并不想发生!

我检查并重新检查了文件的路径等 - 但无济于事。

任何想法将不胜感激! http://missjennifer.net/srini/

谢谢

4 个答案:

答案 0 :(得分:2)

根据经验,您的元素ID不应以数字开头。您已经给出了1,2和3的ID - 尝试将它们更改为menu1,meny2和menu3并调整脚本中的ID。

$("#menu1, #menu2, #menu3").lavaLamp({ 

答案 1 :(得分:2)

您似乎正在尝试为HTML元素使用数字ID。 HTML element ids must begin with a letter。由于您的HTML无效,因此您的选择器$(“#1,#2,#3”)的计算结果为null,从而导致javascript错误。

我的解决方案是给你的标签一个类 - 比如“lavamenu”,然后为你的插件应用一个类选择器:

$('.lavamenu').lavalamp( ... );

<强>更新

由于您还在使用MooTools,因此需要在noConflict模式下使用jQuery。您可以使用以下方式执行此操作:

var $jq = jQuery.noConflict();

然后每当你使用jQuery的$函数时,只需使用$ jq。请注意,您需要在加载jQuery之后但在加载任何冲突的javascript库之前调用noConflict()。有关noConflict()的更多信息可以在jQuery网站上找到,以及关于how to use jQuery with other libraries的想法。

$jq(function() {
    $jq('.lavamenu').lavalamp( ... );


});

答案 2 :(得分:0)

请更改

<script type="text/javascript"> 
        $(function() {
            $("#1, #2, #3").lavaLamp({
                fx: "backout",
                speed: 700,
                click: function(event, menuItem) {
                    return false;
                }
            });
        });
    </script> 

<script type="text/javascript"> 
        $(function() {
            $("A").lavaLamp({
                fx: "backout",
                speed: 700,
                click: function(event, menuItem) {
                    return false;
                }
            });
        });
    </script> 

答案 3 :(得分:0)

你也可以将id改为class

<script type="text/javascript"> 
    $(function() {
        $(".menuitem").lavaLamp({
            fx: "backout",
            speed: 700,
            click: function(event, menuItem) {
                return false;
            }
        });
    });
</script>