您能否看一下this Demo,让我知道为什么#pre
和#nex
上的点击事件仅触发一次!
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var d = new Date();
var n = d.getMonth();
$("#month").html(months[n]);
$(".row").on('click' , '#pre', function(){
$("#month").html(months[n-1]);
});
$("#nex").on('click' , function(){
$("#month").html(months[n+1]);
});
我也尝试在
#pre
上使用委托方法,但再次无法使用 最佳答案
您需要减小和增大n
的值才能起作用。您还需要确保这样做时,您不在数组的范围之外,否则您将获得索引超出范围的异常。
$(".row").on('click' , '#pre', function(){
n = (n === 0) ? months.length - 1 : n - 1;
$("#month").html(months[n]);
});
$("#nex").on('click' , function(){
n = (n === months.length - 1) ? 0 : n + 1;
$("#month").html(months[n]);
});
关于javascript - jQuery Click事件仅触发一次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26371740/