javascript / jquery - ajouter le rebond à un bouton
Je veux ajouter un anti-rebond à un bouton, mais je veux effectuer certaines actions à chaque fois que l'utilisateur clique sur le bouton, mais seulement au bout de 5 seconde après l'utilisateur appuie sur le bouton, puis effectuer la mise à jour SQL. Généralement, le gaz semble être appliqués directement à l'auditeur. Je veux ici certaines actions exécutées chaque fois que le bouton est cliqué, puis une mise à jour après un délai raisonnable.
Je ne suis pas sûr de savoir comment utiliser la fonction dans ce cas...
référence: http://code.google.com/p/jquery-debounce/
$('#myButton').click(function() {
//do a date calculation
//show user changes to screen
//wait until user has has stopped clicking the
//button for 5 seconds, then update file with "process" function.
});
function process(){
//update database table
}
antirebond syntaxe
$('input').bind('keyup blur', $.debounce(process, 5000));
source d'informationauteur george
Vous devez vous connecter pour publier un commentaire.
Vous pouvez toujours utiliser
$.debounce
comme suit:Alternative sans
$.debounce
(vous pouvez toujours antirebond votre code de cette façon, sans jQuery):Anti-rebond en utilisant natif/vanille et JS jquery/underscore.js.
Exemple
JS
HTML
Pourquoi ne pas simplement utiliser
setTimeOut(function() { process(); }, 5000);