【问题标题】:change background color of li element based on selected page根据所选页面更改 li 元素的背景颜色
【发布时间】:2015-08-03 20:24:21
【问题描述】:

我想知道如何在选择子元素时更改锚元素的背景颜色。

例如,如果我有一个导航在哪里

<ul>
    <li><a>home</a></li>
    <li class="has-dropdown"> 
        <a href="somewhere.html"> parent </a>
        <ul>
            <li class="clickedthis has-dropdown"><a href="something.html">list 1</a>
                <ul>
                    <li class="clickedthis"><a href="something.html">list 1</a></li>
                    <li>list 4</li>
                    <li>list 5</li>
                </ul>
            </li>
            <li>list 2</li>
            <li>list 3</li>
        </ul>
    </li>
</ul>

我点击了第一个链接,我希望它在下一页加载时更改父级的背景颜色。

所以无论当前页面是什么,该锚元素的父元素都会设置背景色。


例如the dnn site

如果我从导航转到其中一个子页面,则父元素变为蓝色

【问题讨论】:

    标签: javascript jquery list menu navigation


    【解决方案1】:

    基本思想是将一个类应用于您要更改的元素,例如.selected,它设置背景颜色。

    由于您的 href 值似乎指向静态 .html 文件,因此只需在每个文件中的适当 &lt;li&gt; 上设置该类即可。

    但是,如果您使用有条件地应用类的后端技术,则有更好的管理状态的方法,最好是标记的共享标头 sn-p,具体取决于所服务的页面或路由。

    【讨论】:

    • 我希望它仅在选择子项目并且我被重定向到该子页面时应用具有背景颜色的类。所以在加载新页面时,背景颜色将是.active。并且 href 不是静态的。 (我不知道我的措辞是否正确)
    • 如果不进一步了解您的后端架构以及这些页面是如何生成的,就无法回答这个问题。
    • 它有帮助,您的问题表述得很糟糕,应该将其标记为 .NET 问题。听起来您可能需要更多地阅读文档。 StackOverflow 上还有其他相关问题。您在发布问题之前尝试过搜索吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-09
    • 2022-01-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 2017-04-23
    相关资源
    最近更新 更多