javascript - 子菜单中的 html/css 条件样式

标签 javascript jquery html css

我有一个由网络应用程序生成的菜单结构。输出如下,正如您在下面看到的,菜单分为三层。

<ul id="mainMenu" class="nav">
    <li>
        <a class="firstitem " href="/products.aspx">Products</a>
        <ul id="firstLevel">
            <li>
                <a class="firstitem " href="/products/category-1.aspx">Category 1</a>
                <ul id="secondLevel">
                    <li>
                        <a class="firstitem " href="/products/category-1/sub-category-1.aspx">Subcategory 1</a> <!--If ul#thirdlevel exists, I want this text to be bold.-->
                        <ul id="thirdLevel">
                            <li>
                                <a class="firstitem " href="/products/category-1/sub-category-1/myProduct.aspx">My Product</a>
                            </li>
                        </ul>
                    </li>
                </ul>
            </li>
        <ul>
    </li>
</ul>

大多数菜单会像上面那样生成,但下面的菜单(没有第三级)也是一个选项。

<ul id="mainMenu" class="nav">
    <li>
        <a class="firstitem " href="/products.aspx">Products</a>
        <ul id="firstLevel">
            <li>
                <a class="firstitem " href="/products/category-1.aspx">Category 1</a>
                <ul id="secondLevel">
                    <li>
                        <a class="firstitem " href="/products/category-1/sub-category-1.aspx">Subcategory 1</a>
                    </li>
                </ul>
            </li>
        <ul>
    </li>
</ul>

我想要实现的是,如果有一个三级菜单,我希望二级菜单的超链接文本为粗体。我怎样才能做到这一点?最好使用 css,否则使用 javascript/jQuery。

最佳答案

我为您制作了一个 jsFiddle:http://jsfiddle.net/danAR/

jQuery 代码:

$(function() {
    $('ul#secondLevel li').each( function(index, item) {
        $(this).find('a').toggleClass('aBold', ($(this).find('ul#thirdLevel').length > 0) );
    });
});

CSS:

a.aBold {
    font-weight:bold;
}

关于javascript - 子菜单中的 html/css 条件样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5947039/

相关文章:

javascript - 在 javascript 中重新执行脚本而不再次调用服务器

jquery - jQM ui-hidden-accessible 不隐藏父 div

html - 我正在尝试在 css 中制作一个标题,在浏览器中拉伸(stretch)全宽

javascript - 获取远程加载图像的图像 url 的文件大小

javascript - 按内容选择元素

javascript - 动态具体化模态

html - 使用 CSS 使选项变灰

html - 我怎样才能确保它保持居中,即使在缩小或放大时也是如此?

javascript - 使用 jQuery 动态插入图像

javascript - Jribbble - 如何一次加载 6 个镜头