我有以下簡單的代碼:
<div id="albumTitle">
<ul>
<li id="albumTitle1" class="selected"><a onClick="showAlbum('#albumTitle1','#album1')">Album One</a></li>
<li id="albumTitle2"><a onClick="showAlbum('#albumTitle1','#album1')">Album Two</a></li>
<li id="albumTitle3"><a onClick="showAlbum('#albumTitle1','#album1')">Album Three</a></li>
</ul>
</div>
現在專輯本身
<div id="albums">
<div id="album1">
<ul>
<li><img src="img/image1.png" /></li>
<li><img src="img/image2.png" /></li>
<li><img src="img/image3.png" /></li>
</ul>
</div>
<div id="album2" class="inactive">
<ul>
<li><img src="img/image1.png" /></li>
<li><img src="img/image2.png" /></li>
<li><img src="img/image3.png" /></li>
</ul>
</div>
<div id="album3" class="inactive">
<ul>
<li><img src="img/image1.png" /></li>
<li><img src="img/image2.png" /></li>
<li><img src="img/image3.png" /></li>
</ul>
</div>
</div>
所以這裏就是我想要的......
簡單地說,當我點擊一個專輯,「選定」類將轉到該專輯標題,並刪除先前「選定」的專輯類。
同樣,當選擇ALBUM時,「非活動」類被「添加」到先前選擇的專輯,並從新選擇的專輯中「刪除」。
下面是現在的代碼:
<script language="javascript" type="text/javascript">
function showAlbum(albTitle, albName) {
var obj = new Array();
for (var x = 1; x <= 3; x++) {
obj.push("album" + x);
}
$.each(obj, function (key, value) {
//alert(key + ": " + value);
if ($("#" + value).hasClass("inactive")) {
$("#" + value).removeClass("inactive");
$("#" + albTitle).removeClass("selected");
} else {
$("#" + value).addClass("inactive");
$("#" + albTitle).addClass("selected");
}
});
}
</script>
你正在將相同的變量傳入你的'onclick' – Pete
好吧,那是我的錯......複製/編寫代碼示例時,我忘記了改變它......那麼如果我們考慮到我的onClick事件是正確的......並且它仍然不起作用,那麼我做錯了什麼? –
這是如何:http://jsfiddle.net/gqtmh/4/ - 它允許您使列表可訪問,因爲它將提供如果js被禁用的回退 – Pete