如果元素包含子元素,则将该类分配给元素

时间:2014-09-19 10:18:38

标签: jquery

我有许多具有相同类的元素,我想检查它们中是否有一个特定的子元素,如果是,则为它分配一个特殊的类。

我试过了:

if ( $('li.first_li').find('ul.multi-menu') ) alert('code');

它确实提醒它,意味着它有匹配。

但是如何为具有此孩子的li.first_li分配课程?以下不起作用。

if ( $('li.first_li').find('ul.multi-menu') ) $(this).addClass('code');

2 个答案:

答案 0 :(得分:3)

您需要使用.has()方法。

  

将匹配元素集减少到具有与选择器或DOM元素匹配的后代的元素。

使用

$('li.first_li').has('ul.multi-menu').addClass('code')

答案 1 :(得分:3)

尝试在此上下文中使用.has()过滤器来满足您的需求,

$('li.first_li').has('ul.multi-menu').addClass('code');