【发布时间】:2013-07-10 01:26:08
【问题描述】:
我有这样的代码:
$(".um").click(function () {
$(".subconteudo.dois").slideUp();
$(".subconteudo.tres").slideUp();
$(".subconteudo.quatro").slideUp();
$(".subconteudo.cinco").slideUp();
$(".subconteudo.um").slideDown(3000);
});
每个类再增加 5 次(嗯,dois,...)。我正在尝试用这样的“this”制作一个更小的代码:
$(".um, .dois, .tres, .quatro, .cinco").click(function () {
$(".subconteudo.um").slideUp();
$(".subconteudo.dois").slideUp();
$(".subconteudo.tres").slideUp();
$(".subconteudo.quatro").slideUp();
$(".subconteudo.cinco").slideUp();
$(this + ".subconteudo").slideDown();
});
有可能吗?如何? 谢谢 顺便说一下html代码是这样的:
<div class="menu">
<div class="submenu um"></div>
<div class="submenu dois"></div>
<div class="submenu tres"></div>
<div class="submenu quatro"></div>
<div class="submenu cinco"></div>
</div>
<div class="conteudo">
<div class="subconteudo um"></div>
<div class="subconteudo dois"></div>
<div class="subconteudo tres"></div>
<div class="subconteudo quatro"></div>
<div class="subconteudo cinco"></div>
</div>
【问题讨论】:
-
为什么不只是
$(this).slideDown()? -
为所有这些设置一个通用类并执行
$('.commonclass').click(function(){$('.subconteudo').slideUp();})这样您将节省大约 6 行代码。 -
@SebastianUrielMurawczik 回答这个问题!