以下の関数を持っているのですが、なぜか2回発火してしまいます。この関数はグローバル カウンターをインクリメントするため、この問題が発生するのはなぜですか? また、どうすれば修正できますか?
ご協力いただきありがとうございます。
$("body").on("click", "#moveOn", function (e) {
var currentLocation = $(".backgroundImage.currentLocation");
$(currentLocation).removeClass("currentLocation").addClass("leaveLocation");
var nextLocationClass = $(this).attr("data-nextLocation");
var nextLocation = $(".backgroundImage." + nextLocationClass);
$(nextLocation).removeClass("hidden").addClass("moveToLocation");
console.log("Clicked arrow " + dataHolder.data.currLocation);
(dataHolder.data.currLocation)++;
$(this).addClass("hidden");
setTimeout(function () {
$(currentLocation).addClass("hidden").removeClass("leaveLocation");
$(nextLocation).addClass("currentLocation").removeClass("moveToLocation");
}, 6000);
e.stopPropagation();
});