<li id="menu-item-43" class="menu-item menu-item-type-custom menu-item-object-custom">
<a href="#">
<cufon class="cufon cufon-canvas" alt="JEDEN" style="width: 33px; height: 12px;">
<div class="menu-button-desc" style="padding-left: 3.80049px;"></div>
</a>
</li>
spec.find($(".sub-menu li:not(:contains('pic-sub'), :contains('title-sub'), div.menu-button-desc)")).clone().prependTo("#sub-menu ul");
我需要排除 div.menu-button-desc 。其他一切都很好。我做错了什么......
答案 0 :(得分:0)
当您选择#menu-item-43元素时,它已经将div.menu-button-desc作为子元素。你想要做的是克隆整个节点,向下钻取到你想要去的元素,.remove()它,然后.end()返回你的克隆元素,而没有“有问题的孩子”。
你还有一些时髦的东西正在组合.find和另一个顶级选择器($()),我认为你的选择器字符串大多没有做任何事情。你不希望选择器具有所有逻辑,它只是一个遍历和操作的起点。这是我对你的目标的最佳猜测:
spec.find(".sub-menu li").clone()
.find(".menu-button-desc").remove()
.end().prependTo("#sub-menu ul");