您需要遍历每个元素以检查它们是否隐藏。这实际上取决于您是要先将它们全部隐藏还是全部显示。这是您需要的:
// To toggle each element's state
$("#btn").click(function() {
$(".para2, .para3, .para4").each(function (index, element) {
if ($(this).is(':visible')) {
$(this).hide(200);
} else {
$(this).show(200);
}
});
});
// To show all and hide all afterwards or vice-versa (change the attr check)
$("#btn").click(function() {
if ($(this).attr('data-show')) {
$(".para2, .para3, .para4").show(200);
$(this).attr('data-show', false);
} else {
$(".para2, .para3, .para4").hide(200);
$(this).attr('data-show', true);
}
});
// To hide all if one is shown
$("#btn").click(function() {
var oneShown = false;
$(".para2, .para3, .para4").each(function (index, element) {
if ($(this).is(':visible')) {
oneShown = true;
}
});
if (oneShown) {
$(".para2, .para3, .para4").hide(200);
} else {
$(".para2, .para3, .para4").show(200);
}
});