我试图显示一个接一个的div,当我点击“add_more”按钮时。第一次点击按我的意愿工作,但第二次点击所有div显示。jQuery事件点击发射多次
$(document).ready(function() {
$('#add_more').click(function() {
$('#add_more_fields').show(500);
});
});
$('#add_more').click(function() {
if($('#add_more_fields').is(':visible')) {
$('#add_more_fields2').show(500);
};
});
$('#add_more').click(function() {
if($('#add_more_fields2').is(':visible')) {
$('#add_more_fields3').show(500);
};
});
$('#add_more').click(function() {
if($('#add_more_fields3').is(':visible')) {
$('#add_more_fields4').show(500);
};
});
$('#add_more').click(function() {
if($('#add_more_fields4').is(':visible')) {
$('#add_more_fields5').show(500);
};
});
我看到的问题是,所有这些都绑定到一个点击功能,并在同一时间触发。我如何分离事件,以便每次点击都添加下一个div?
不要使用多个事件处理函数来快速处理相同的事件。尽管它有效(jQuery允许通过触发所有这些来让事件处理程序不会覆盖已经存在的处理程序),但它使得阅读起来更加困难,并且添加了代码行,只需要将代码打包整合到一个事件处理程序中 –
虽然现在我已经说过这个人可能会想出一个我没有想到的时间用例。但这当然不是其中之一。 –