我试图独立切换多个div.
它目前正在运作,但并非完全如此.
我试图实现的是切换匹配单击元素的div – 但我也希望能够再次单击该元素并隐藏匹配的div.
我怎样才能做到这一点?随意使用jsFiddle
http://jsfiddle.net/oczfefaa/9/
$(document).ready(function() {
$("ul.menu li a").on("click", function(e) {
$("div").addClass("hide");
e.PreventDefault;
var grabID = $(this).attr( "href" );
$('div' + grabID).toggleClass("hide");
});
});
最佳答案 试试这个:你为所有隐藏所有的div(包括点击的div)添加了hide类,因此在toggleClass上它会显示div,虽然它已经可见了.尝试将hide类添加到除被单击的div之外的所有div.
$(document).ready(function() {
$("ul.menu li a").on("click", function(e) {
e.PreventDefault;
var grabID = $(this).attr( "href" );
$('div' + grabID).toggleClass("hide");
$("div").not('div' + grabID).addClass("hide");//hide all div except clicked one.
});
});