私はこのコードを持っています:
$('.myButton').live('click',function(){
var checkTextValue = setTimeout(function() {
var textVal = $('p').text();
if (textVal == 'expectedValue'){
alert('done');
} else {
setTimeout(arguments.callee, 10);
}
},10);
});
ボタンを初めてクリックすると問題なく動作しますが、ボタンを複数回クリックするとアラートがn回以上呼び出されます(ボタンをもう一度クリックするとアラートが表示されます->[OK]をクリックしてからもう1つのアラートが表示されます。この後、もう一度クリックすると3つのアラートが表示されます)。textVal =='expectedValue'がtrueを返した後に関数を削除する方法はありますか?