Javascript jQuery方法找不到选择器
我正在编写一个简单的jQuery函数,从html页面中选择一个选择器,并在按键(向上或向下)上添加一个CSS类 问题是它没有检测到添加类的选择器 HTML选择器嵌套在代码的深处Javascript jQuery方法找不到选择器,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在编写一个简单的jQuery函数,从html页面中选择一个选择器,并在按键(向上或向下)上添加一个CSS类 问题是它没有检测到添加类的选择器 HTML选择器嵌套在代码的深处 html body div.fixed-header div#main-nav.primary-nav.navbar div.navbar-inner div.primary-nav-right-con
html
body
div.fixed-header
div#main-nav.primary-nav.navbar
div.navbar-inner
div.primary-nav-right-content
ul.nav
li#global-search
div.search-results
ul.search-dropdown
ul.search-entry
我正在尝试检测jquery中的选择器ul.search-entry
我现在在javascript中看到的是这个
var selector = $('ul.search-entry');
var selected;
$(window).keydown(function(e){
if(e.which === 40){
if(selected){
selected.removeClass('selected');
next = selected.next();
if(next.length > 0){
selected = next.addClass('selected');
}else{
selected = selector.eq(0).addClass('selected');
}
}else{
selected = selector.eq(0).addClass('selected');
}
}else if(e.which === 38){
if(selected){
selected.removeClass('selected');
next = selected.prev();
if(next.length > 0){
selected = next.addClass('selected');
}else{
selected = selector.last().addClass('selected');
}
}else{
selected = selector.last().addClass('selected');
}
}
else{
}
});
我绞尽脑汁已经太久了,我知道我错过了一些非常小的东西。有什么想法吗?只将
选择器设置为选择器字符串,而不是结果集合,并在需要时调用jQuery
进行搜索
var selector = 'ul.search-entry';
var selected;
$(window).keydown(function(e){
if(e.which === 40){
if(selected){
selected.removeClass('selected');
next = selected.next();
if(next.length > 0){
selected = next.addClass('selected');
}else{
selected = $(selector).eq(0).addClass('selected');
}
}else{
selected = $(selector).eq(0).addClass('selected');
}
}else if(e.which === 38){
if(selected){
selected.removeClass('selected');
next = selected.prev();
if(next.length > 0){
selected = next.addClass('selected');
}else{
selected = $(selector).last().addClass('selected');
}
}else{
selected = $(selector).last().addClass('selected');
}
}
else{
}
});
确保代码位于dom就绪处理程序中如果(已选择)
,已选择
从未给定值。是否需要选择器
?@tymeJV当如果(已选择)
为true时,已选择的
已经有一个值,因此不需要再给它一个值。“问题是它没有检测到添加类的选择器。”您是如何发现没有选择任何元素的?你看过报纸了吗?为了在文档准备好被操作时立即运行代码,jQuery有一条语句称为“您的问题可能暴露了误解”ul.search条目
是一个选择器,$(“ul.search条目”)
是与选择器匹配的元素的jQuery集合。是!这就成功了。我不敢相信是这个傻瓜干的。谢谢你,菲利克斯。