使用子项为列表项设置样式

时间:2012-07-09 08:45:35

标签: javascript jquery

我已经在圈子里走了几个小时,我不断收到这段代码的错误:

$('div.colA div.region-sidebar-left div.menu-block-wrapper').find('li').each(function() {
        if ($(this).find('> ul').size() > 0) {
            $(this).addClass('has_child');
        }
});

它应该做的就是找到所有<li><ul>的孩子并给它一个班级。简单。

http://jsfiddle.net/simcox90/mEMmN/

1 个答案:

答案 0 :(得分:6)

而不是

$(this).find('> ul').size();

你可以说:

$(this).children("ul").length

请参阅:http://api.jquery.com/children/


而且我认为你可以使用这个oneliner:

$('div.colA div.region-sidebar-left div.menu-block-wrapper li > ul').parent().addClass("has_child");

$('li > ul').parent()会返回所有li个节点,其中有一个ul作为孩子。