次のコードを使用して、div(infoという名前)の外側をクリックしたときに非表示にします。
$(document).click(function(e) {
if (e.target.id != 'info' && !$('#info').find(e.target).length) {
$("#info").fadeOut(300);
setTimeout(function() {
$("#info").html("Select an Item");
},300);
}; //if statement
}); //click function
私が達成しようとしているのは、fadeOutが実行された後、「SelectaItem」というテキストをdivに配置することです。ただし、このSetTimeoutは常に実行されます。divは別の関数を介して表示されますが、このsetTimeout関数もすぐにトリガーされるようです。
なぜこれが発生し、どのように修正しますか?