それは私のメニューのhtmlです:
<ul class="nav">
<li><a href="#a" class="active">A</a></li>
<li><a href="#b" >B</a></li>
<li><a href="#c" >C</a></li>
<li><a href="#d" >D</a></li>
</ul>
メニューのリンクをクリックした後、アクティブなクラスがクリックされたに追加されます<li>。
前もって感謝します
それは私のメニューのhtmlです:
<ul class="nav">
<li><a href="#a" class="active">A</a></li>
<li><a href="#b" >B</a></li>
<li><a href="#c" >C</a></li>
<li><a href="#d" >D</a></li>
</ul>
メニューのリンクをクリックした後、アクティブなクラスがクリックされたに追加されます<li>。
前もって感謝します
jqueryを使う
$("li a").click(function() {
$('li a').not(this).removeClass('active');
$(this).toggleClass('active');
});
jQuery を使用する場合は、次のようなコードを使用できます。
$(function () {
$(".nav a").click(function () {
$(".nav a").removeClass("active");
$(this).addClass("active");
});
});
私はこれがうまくいくと思います
var navlinks = document.getElementByClass('nav').getElementsByTagName('a');
for (var i = 0; i < navlinks.length; i++) {
if(navlinks[i].className == 'active'){
navlinks[i].parentNode.parentNode.parentNode.className = 'YOUR CLASS';
}
}
jQueryでこれを試してください
$('#nav li a').click(function(){
$('#nav li a').removeClass('active');
$(this).addClass('active');
});
これは、質問で要求しなかったため、jquery を使用しないプロトタイプです。アクティブなクラスを持つ現在の要素を検索し、それを削除して、クリックしたクラスにクラスを追加します。
Javasript 関数
function activeThis(element){
var current = document.getElementsByClassName("active")[0];
current.className = null;
element.className="active";
}
HTMLコード
<a href="#b" onclick="activeThis(this)">
これはあなたのために働くはずです
elems =document.getElementsByClassName("nav")[0].getElementsByTagName("a");
for (var i = 0; i < elems.length; i++) {
elems[i].addEventListener("click", function (e) {
for (var i = 0; i < elems.length; i++) {
elems[i].className="";
};
this.className = "active";
});
}
私のフィドルをチェックしてください
これがあなたの望むものであることを願っています
http://jsfiddle.net/arunberti/ftZzs/
a:visited
{
color:green;
}
a:active {color:yellow;}
a:link {color:red;}
それはとても簡単です
jQuery コード:
$('.nav li a').on('click',function(){
$('.nav li').each(function() {
var anc=$(this).find('a');
if(anc.hasClass('active'))
{
$(anc).removeClass('active');
}
})
$(this).addClass('active');
})
編集済み: コードが洗練されました
ハッピーコーディング:)
これを試して:
$('.nav li').click(function(e) {
$(this).addClass('selected').siblings().removeClass('selected');
});
clickまたは、イベントをに添付する場合a:
$('.nav a').click(function(e) {
e.preventDefault();
$('.nav a').removeClass('selected');
$(this).addClass('selected');
});