2014-06-10 4 views
0

J'ai un projet où j'ai besoin que le bouton qui démarre la fonction soit "bloqué" pendant 3,5 secondes après le dernier clic. Je veux dire que le bouton devrait toujours être affiché comme il était, mais au clic il ne devrait pas réagir de quelque façon que ce soit pendant 3,5 secondes. Voici l'échantillon qui affiche l'heure actuelle sur le bouton clic:Appuyez sur le bouton Bloquer pendant X secondes en JavaScript

<!DOCTYPE html> 
<html> 
<body> 
<button type="button" onclick="myFunction()">Date</button> 
<p id="demo"></p> 
<script> 
function myFunction() { 
    document.getElementById("demo").innerHTML = Date(); 
} 
</script> 

</body> 
</html> 

L'utilisateur doit être en mesure de cliquer sur le bouton (et exécuter la fonction) plusieurs fois sans avoir besoin de recharger la page.

Comment puis-je y parvenir?

+0

-ce que « comme il est affiché » signifie que la désactivation du bouton n'est pas une option? –

Répondre

0
<button id="button" type="button" onclick="myFunction()">Date</button> 
<p id="demo"></p> 
<script> 
function myFunction() { 
    document.getElementById("demo").innerHTML = Date(); 
    document.getElementById("button").setAttribute('disabled', true); 
    setTimeout(function(){ 
     document.getElementById("button").removeAttribute('disabled'); 
    }, 3500) 
} 
</script> 

jsFiddle

Questions connexes