これがコードのデモです...クラスは一度置き換えられますが、新しいクラスがクリックされると、古いクラスが元に戻るはずです
たとえば、ホームのページロードクラスはデフォルトでホーム1であり、さようならをクリックすると、さようならのクラスはbye1に変更されますが、ホーム1はホームに戻りませんが、クラスhome1を削除してクラスhomeを追加するコード行がありますそれ。
ここにデモがあります
htmlは
<ul class=nav>
<li class="home1"><a href="">HOME </a></li>
<li class="bye"><a href="">BYE </a></li>
</ul>
<script>
window.lastclickedclass="home1";
$("ul.nav li").click(function(e)
{
alert(lastclickedclass);
var updatedlastclass=lastclickedclass.slice(0,-1);
var testclass=$(this).attr("class");
var lastChar = testclass.substr(testclass.length - 1);
if (lastChar=="1")
{
var newclass = $(this).attr("class");
var oldclass = testclass.slice(0,-1);
}
else
{
var newclass=$(this).attr("class")+"1";
var oldclass=$(this).attr("class");
}
$(this).removeClass(oldclass);
$(this).addClass(newclass);
$(lastclickedclass).removeClass(lastclickedclass);
$(lastclickedclass).addClass(updatedlastclass);
lastclickedclass=$(this).attr("class");
alert(lastclickedclass);
});
CSSは
li.home1 {
background: #678fef no-repeat;
width:150px;
height:65px;
color:#fff;
}
li.home{
background: #666 no-repeat;
width:150px;
height:65px;
color:#fff;
}
li.bye1 {
background: #678fef no-repeat;
width:150px;
height:65px;
color:#fff;
}
li.bye{
background: #666 no-repeat;
width:150px;
height:65px;
color:#fff;
}