jQuery:如果标记包含特定的类,则附加HTML

时间:2014-12-08 07:35:33

标签: jquery html css append

我认为这应该是相当简单的,但谷歌并没有产生任何结果,所以希望有人可以提供帮助。

使用jQuery我想在元素中附加一些HTML,如果它包含带有特定类的ul。

所以如果"主菜单li"元素包含" ul.sub-menu"我想追加"扩展" "主菜单里面的div"包含它的元素。

以下是我使用的HTML:http://pastebin.com/4pwN9Rte

非常感谢任何帮助!

3 个答案:

答案 0 :(得分:2)

试试这个:

$('.main-menu > li').find('ul.sub-menu').parent('li').append($('<div/>').addClass('expand'));

<强>解释

获取li列表中的.main-menu个孩子,找到ul子菜单,并将一个新的div附加一个类展开到其父li元素。

或更短的版本:

$('.main-menu > li:has(ul.sub-menu)').append($('<div/>').addClass('expand'));

这是一个显示:http://jsfiddle.net/03j5fkyh/1/

的jsfiddle

答案 1 :(得分:1)

试试这个

 if($("main-menu li ul").hasClass("sub-menu")){
      $("main-menu li").append("#expand");
 }

希望它能起作用

答案 2 :(得分:0)

确实很容易!干杯! CODEPEN

$('li:has(.sub-menu)').prepend('<div class="expand">asdfasdfasdf</div>');