使用Umbraco7我制作了一个基于Umbracos Sitemap的PartialView。
我设法添加了一个&#34;当前&#34;类到当前<li>
但我想以父UL为目标。
快速概述:
<ul>
<li>
<ul> <-This guy needs a Current/Parent Class
<li class="current">
Here you are
</li>
</ul>
</li>
部分视图:
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{ var selection = CurrentPage.Site(); }
@Traverse(selection)
@helper Traverse(dynamic node)
{
var maxLevelForSitemap = 3;
var selection = node.Children.Where("Visible").Where("Level <= " + maxLevelForSitemap);
if (selection.Any())
{
<ul>
@foreach (var item in selection)
{
string cssClass = @item.Id != CurrentPage.Id ? "" : "current";
<li class="@cssClass">
<a href="@item.Url">@item.Name</a>
@Traverse(item)
</li>
}
</ul>
}
}
答案 0 :(得分:0)
你可以使用一个小的jquery脚本,每次加载页面或发生回发时都会执行:
$(document).ready(function() {
$('li.current').closest('ul').addClass('active');
});
这将获取当前的li并搜索最接近的ul(parent)并添加类active
。