我收到以下錯誤消息:幫助jQuery的加原型
When I called jQuery(...) with your args, an error was thrown!
TypeError: $("#contest-navigation ul li") is null
然而,在控制檯中,如果I型:
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>
這裏是我的完整代碼(製表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');
});
});
請發表含有'#contest-navigation'的HTML文件 – Kyle 2011-03-28 18:51:48
這是來自某個程序的分析嗎? jQuery.lint.js? 我相信相同的選擇器消息意味着你已經多次使用$(selector),而不是將它存儲在一個變量中來緩存它。 只要null和非null返回...是第一次嘗試使用選擇器時加載的頁面? $(function(){dowork();}); 當您在控制檯中手動執行頁面時,頁面顯然會加載。 – 2011-03-28 18:53:53
剛發佈一些HTML – redconservatory 2011-03-28 19:13:59