帮助jQuery加原型

时间:2011-03-28 18:49:41

标签: jquery jquery-selectors

我收到以下错误消息:

When I called jQuery(...) with your args, an error was thrown!
TypeError: $("#contest-navigation ul li") is null

但是,在控制台中,如果我输入:

jQuery("#contest-navigation ul li");

我收到一条非空信息(我唯一看到的是“你不止一次使用过同一个选择器”,这是有道理的,因为它是一个无序列表)。

我认为这实际上是因为我使用jQuery的原型(好吧,我之前的人),但我不知道如何解决这个问题。我知道当我把原型库的链接拿出来时我的jQuery代码正常工作......

HTML:

<div id="contest-navigation">
<ul>
    <li><a><span>About</span</a></li>
    <li><a><span>Enter</span</a></li>
    <li><a><span>Rules</span</a></li>
    <li><a><span>Prizes</span</a></li>
    <li><a><span>FAQ</span</a></li>
</ul>
</div>

这是我的完整代码(tab-rollover.js):

jQuery(function() {
    jQuery('#contest-navigation ul li').hover(function() {
        jQuery(this).addClass('hover');
    }, function() {
        jQuery(this).removeClass('hover');
    });

    jQuery('#contest-navigation ul li').click(function() {
        jQuery('#parents-subnav ul li').removeClass('selected');        
        jQuery(this).addClass('selected');
    });

});

2 个答案:

答案 0 :(得分:2)

确保您的代码位于ready区块内。

答案 1 :(得分:1)

我唯一能想到的是$("#contest-navigation ul li")在它存在于文档之前被调用。您可以在文档加载后验证它是否正在发生?