css
クラスをクリックして要素に追加しようとしています。 しかし、私はそれをすることができませんでした。 このアクションの目標は、要素をクリックするとメニューの最初のレベルで別の色で表示されるということです。クリックして要素にCSSクラスを追加
たとえば、このリンクをクリックしてください。
http://www.templatemonster.com/demo/50935.html
この問題は、クリックした後にページを更新するの発生した可能性が!よく分かりません。
私はそれをどのように行うことができますか?
(私はASP.NETとUmbraco CMSを使用しました)
MyHelpers.cshtml:
@helper Navigation(int parentId, int depthNavigation = 3)
{
IPublishedContent parent = Node.ContentCache.GetById(parentId);
if (parent.Level <= (depthNavigation - 1) && parent.GetPropertyValue("UmbracoNaviHide").Equals(false) && parent.Children().Count() > 0)
{
if (parent.Level > 1)
{
<ul style="visibility: hidden; display: none;" class="sub-menu">
@foreach (IPublishedContent child in parent.Children())
{
if (child.Level <= depthNavigation && child.GetPropertyValue("UmbracoNaviHide").Equals(false))
{
<li class="menu-item menu-item-type-post_type menu-item- object-page">
<a href="@child.Url">@child.Name</a>
@Navigation(child.Id, depthNavigation)
</li>
}
}
</ul>
}
else
{
foreach (IPublishedContent child in parent.Children())
{
if (child.Level <= depthNavigation && child.GetPropertyValue("UmbracoNaviHide").Equals(false))
{
<li id="[email protected]" class="firstLevelOfMenu
menu-item
menu-item-type-post_type
menu-item-object-page">
<a href="@child.Url">@child.Name</a>
@Navigation(child.Id, depthNavigation)
</li>
}
}
}
}
else
{
foreach (IPublishedContent child in parent.Children())
{
if (child.Level <= depthNavigation && child.GetPropertyValue("UmbracoNaviHide").Equals(false))
{
<li>
<a href="@child.Url">@child.Name</a>
@Navigation(child.Id, depthNavigation)
</li>
}
}
}
}
要素をクラス名で簡単に選択する方法があります。次のように使ってください: '$( '。firstLevelOfMenu')'。クラス名の前にあるドットは、クラス名で要素を選択することを決定します。やってみて。 –
クリック後、ユーザーは新しいページにリダイレクトされますか? – DVJex
これはUmbracoなので、現在のページURLに親(またはツリーの最上位)URLが含まれているかどうかを調べることができます。存在する場合は、そのURLに 'current'クラスを追加します。例えば、 'http://example.com/products/hats/safari?color = white'というURLは' http:// example.com/products/hats'という部分文字列を含んでいるので、 'class =そのマッチに基づいて「Razor」マークアップ内の「Hats」ナビゲーション項目に「現在の」を表示します。これはもちろん階層に依存しますが、うまくいけば何かを構築することができます。 – trnelson