这是一个解决方案:
$('#btn1,#btn2').click(function() {
$('#div'+this.id.slice(-1)).fadeOut()
});
如果你想要更通用的东西,为任何“btnxxx”工作,那么你可以这样做:
$('[id^=btn]').click(function() {
$('#div'+this.id.slice(3)).fadeOut()
});
但是一个类和一个数据属性会更好:
<span class=btn data-btnid=35>AAA</span>
$('.btn').click(function() {
$('#div'+$(this).data('btnid')).fadeOut()
});
在(不那么相关的)评论之后编辑:
这是另一个例子:
<span class=btn data-btnid=35 data-dir="Left">AAA</span>
$('.btn').click(function() {
var $this = $(this);
var $target = $('#div'+$(this).data('btnid'));
var animation = {};
animation['margin'+$this.data('dir')] = '0';
$target.animate(animation);
});