2012-09-11 26 views
0

说我有两个click处理程序执行相同的功能:将多个点击处理程序放到一个

$('#div1').click(function(event) { 
alert('here');        
}); 

$('#div2').click(function(event) { 
alert('here');        
}); 

我怎么能这两个处理器合并成一个,而不是重复调用,以提醒?

喜欢的东西:

$('#div1').click.('#div2').click(function(event) { 
alert('here');        
}); 

回答

3

试试这个:

$('#div1, #div2').click(function(event) { 
    alert('here');        
}); 

此外,如果你有很多div元素,包含在一个共同的父母,你可能需要事件代表团的好处,并附父母本身的单个处理程序,如下所示:

$('.common-parent').on('click', 'div', function(event) { 
    ...       
}); 
4

第一个w AY:

$('#div1, #div2').click(function(event) { 
    alert('here');        
}); 

方式二:

function doIt(e) { 
    alert('here'); 
} 
$('#div1').click(doIt); 
$('#div2').click(doIt); 

注意,你有这个问题的事实,有时意味着你应该使用一个类,而不是只是ID,这样你就可以做这样的事情

$('.alertable').click(function(event) { 
    alert('here');        
}); 
相关问题