我使用 jQuery 的第一步。下面的代码有效,但我确信它完全臃肿。
场景如下:有一个包含 9 个产品的页面。每次用户点击一个链接 ( item[x]
) 时,General 中的所有内容#contentdiv
都应该隐藏,新内容淡入。
新内容由一般产品信息 ( #product[x]
) 和附加的.info
div 类 ( .info1
, .info2
) 组成。
我敢肯定,许多初学者都想知道如何以更少的膨胀更高效地编写此代码。有任何想法吗 ?
HTML:
<div id="contentbox">
<div id="product1">blah</div><!-- is displayed on pageload -->
<div id="product2" style="display:none;">blah</div>
<div id="product3" style="display:none;">blah</div>
<div id="product4" style="display:none;">blah</div>
<div id="product5" style="display:none;">blah</div>
<div id="product6" style="display:none;">blah</div>
<div id="product7" style="display:none;">blah</div>
<div id="product8" style="display:none;">blah</div>
<div id="product9" style="display:none;">blah</div>
<div class="info1">blah</div><!-- is displayed on pageload -->
<div class="info2" style="display:none;">blah</div>
</div><!-- End of #contentbox -->
jQuery:
$('#item-1').click(function (){$('#contentbox').children().hide();$('#product1').fadeIn(200);$('.info1').fadeIn(200);});
$('#item-2').click(function (){$('#contentbox').children().hide();$('#product2').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-3').click(function (){$('#contentbox').children().hide();$('#product3').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-4').click(function (){$('#contentbox').children().hide();$('#product4').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-5').click(function (){$('#contentbox').children().hide();$('#product5').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-6').click(function (){$('#contentbox').children().hide();$('#product6').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-7').click(function (){$('#contentbox').children().hide();$('#product7').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-8').click(function (){$('#contentbox').children().hide();$('#product8').fadeIn(200);$('.info2').fadeIn(200);});
$('#item-9').click(function (){$('#contentbox').children().hide();$('#product9').fadeIn(200);$('.info2').fadeIn(200);});