如何在每个<ul>的最后一个<li>之后删除所有文本?

Nob*_*aga 2 html javascript css jquery

我也有他们子菜单的菜单.页面加载后..网站在子菜单的每个结尾后生成随机文本..

在此输入图像描述

这是从firebug生成的当前标记:

<nav class="shopMenuHover">
    <div id="bx_incl_area_5_1"> 
        <ul> 
            <li><a href="#" >First Menu</a>
            <div class="" style=""><h2><a href="#">First Sub Menu</a></h2>
                <ul> 
                    <li>
                        <a href="">Sub Menu &gt; Sub Menu</a>
                    </li>

                    <li><a href="">Sub Menu &gt; Sub Menu</a> 90797</li>
                </ul>
            </div>
        </li>


        <li class="firstLevel hasSubmenu instrumentarium-en-fresen">
        <a href="#" class="firstLevel">Second Menu</a>

        <div><h2><a href="">Second Menu</h2>
            <ul>
                <li><a href=""><font><font>Sub Menu &gt; Sub Menu</a></li>
                <li><a href="">Sub Menu &gt; Sub Menu</a> 896346</li>
            </ul>

        </div>
        </li>

        </ul>
    </div>
</nav>
Run Code Online (Sandbox Code Playgroud)

问题:文本90797896346是由网站随机生成的文本.如何在每个最后一个li> a ul 之后删除这些文本?

这是我用来选择标签内的文本的当前jquery :

<script type="text/javascript">
$(document).ready(function() {
$(".shopMenuHover ul li:last-child > a").css( "border", "2px solid red");
});
</script>
Run Code Online (Sandbox Code Playgroud)

输出:删除每个最后一个最后一个孩子的标签后的所有文本.

请帮我...

ade*_*neo 11

您可以选择所有节点,包括文本节点,contents()然后使用它filter()来获取锚点之外的文本节点,并将其删除

$(".shopMenuHover ul li:last-child").contents().filter(function() {
    return this.nodeType === 3;
}).remove();
Run Code Online (Sandbox Code Playgroud)

小提琴