私はこの問題で頭がいっぱいです
ここでの考え方は、スクリプトが作業を完了してリンクを再度有効にするまで、リンクが機能しないようにすることです。
私はライブを使用していますが、変更するつもりはありません。以下のスクリプトは、ライブなしでは機能しますが、ライブでは機能しません。理由がわかりますか?
$(document).ready(function () {
$('.user').live('click',function() { // All works well if live is removed.
//But I need live, since things change and there's a lot of old code using it.
console.log('Invoked');
// Do anything to disable the link
$('.user').unbind('click'); // Does not work
//$('.user').off('click'); // Does not work either
//Once the script is done with its ajax work, enable it again
//$('.user').bind('click');
//$('.user').on('click');
});
});
<div class="container">
<div><i class="icon-add user"></i></div>
<div><i class="icon-add user"></i></div>
<div><i class="icon-add user"></i></div>
<div><i class="icon-add user"></i></div>
</div>