【发布时间】:2011-02-14 23:22:16
【问题描述】:
我正在使用 Visual Studio 2005、ASP.NET 和 C#。
当它们各自的目标页面是当前显示的页面时,我想使用具有active 外观的菜单栏。
想象一个用户点击一个菜单项,导航到目标页面并且他们选择的菜单项现在不同了,比如说,菜单中其他项目的颜色不同,以表明这是当前活动的位置。
如何实现这一目标?
【问题讨论】:
-
什么?请提供更多细节。
我正在使用 Visual Studio 2005、ASP.NET 和 C#。
当它们各自的目标页面是当前显示的页面时,我想使用具有active 外观的菜单栏。
想象一个用户点击一个菜单项,导航到目标页面并且他们选择的菜单项现在不同了,比如说,菜单中其他项目的颜色不同,以表明这是当前活动的位置。
如何实现这一目标?
【问题讨论】:
你想创建一个导航菜单,当用户点击某个链接时,目标会变成不同的颜色?
如果是这样,你可以只用 html 和 css 来做。
或者,如果您愿意,您可以创建 css 类。 然后您可以检查您所在的页面并更改服务器端对象的 cssClass 属性。
【讨论】:
对此进行排序的最佳方法是向按钮/链接添加一个 css 类,以更改项目的样式以突出显示它。即
<ul>
<li><a id="Url1" href="/Url1" class="selected" runat="server">Item 1</a></li>
<li><a id="Url2" href="/Url2" runat="server">Item 2</a></li>
</ul>
我通常会尝试通过从 url 检测它来实现这一点,这样如果用户直接访问该页面,代码也可以处理它。它可以通过服务器端 C# 或 javascript 来完成,但我总是使用服务器端代码来实现,因为如果用户禁用了 JavaScript,这仍然可以工作。
【讨论】: