我一直试图将这个问题弄清楚大约两天,并且无法理解为什么这不起作用。
比方说,我声明一个变量“ul”,并想说var + li显示为红色。
$("document").ready(function() {
var menu = $("ul");
$(menu +" li").css("color","red");
});
现在所有列表项都应为红色。我究竟做错了什么?
答案 0 :(得分:9)
要将所有直接儿童更改为红色,您可以使用
menu.children('li').css("color","red");
如果您需要ul中的所有li(嵌套ul> li> ul> li),请使用.find
menu.find('li').css("color","red");
答案 1 :(得分:3)
你应该运行这样的东西:
menu.children('li').css('color', 'red');
问题是menu
是一个对象,并且向对象添加字符串返回NaN
(在FF中),它不能用作选择器。
答案 2 :(得分:2)
你做错了是添加一个带字符串的jQuery对象。尝试:
var menu = $('ul');
menu.find('li').css('color', 'red');
答案 3 :(得分:0)
尝试
menu.children('li').css('color', 'red');