これがクリックされた場合に a href タグにクラスを割り当てたい、つまり、1 つのアドレスがアドレスバーにある場合、このタグに 1 つのクラスを割り当てたい..
私はCSSにこのスタイルを持っています..
ul#menu li a {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
color: #465c71;
}
ul#menu li a.selected {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
color: #FFFFFF;
}
フォントの色のみを変更する場所..
そして、私のmvc3プロジェクトのレイアウトページにあるこのjqueryスクリプト..
私はこの機能を持っています..
<script type="text/javascript">
$(function () {
var pgurl = window.location.href.substr(window.location.href.lastIndexOf("/") + 1);
$("#menu li a").each(function () {
var addr = $(this).attr("href").lastIndexOf("/") + 1;
if (addr == pgurl)
$(this).addClass("selected");
})
});
</script>
pgurl は太字の値ですhttp://local.host:81/Home/ Services (確かに、私は別の jquery 関数を使用して動作するため)
そして、私はこのようなaa hrefリンクを持っています..
<li><a href="@Url.Action("Services", "Home")">@MvcWebRole1.Resources.Shared.Layout.Services</a></li>
そして、これは上記のようにリンクを生成します..
<a href="/Home/Services">Services</a>
最初の変数が私と同じページである場合、このタグにクラスを追加したい場所..私はfirebugまたは同様の方法で行います(手動でクラスを追加します)期待どおりに動作します..
最後に、2 つの変数は太字の値 (Services) を持つ必要がありますが、タグにクラスを追加しません。Visual Studio 2010 で作業しており、この値をテストすることはできません。値を表示するためにブレークポイントを配置することはできません。上でコメントしたように、別のリストのタグと完全に連携する別の同様の関数があります..
誰かが私を助けることができますか?
ありがとう。