SetTimeout d'une seconde sur un click()

didi -  
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

je suis en train tant bien que mal de modifier la source d'un clavier visuel et j'essaye de faire en sorte que lorsque l'utilisateur survolera le bouton pendant une seconde cela pressera la touche

en gros j'essaye ceci

<html>
<head>
<script type="text/javascript">
function click()
{
var t=setTimeout("click()",1000);
}
</script>
</head>

<body>
<form>
<input type="button" value="Display timed alertbox!"onmouseover="click()" />
</form>
</body>
</html>

Mais ça marche po!

Merci

3 réponses

avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 509
 
Utilise setInterval et clearInterval.
<p><input type="button" value="Display timed alertbox!" id="button_timer" /></p>
Et dans le head :
<script type="text/javascript">
function fonction() {
	alert('Vous avez laissé le curseur plus d\'une seconde sur le bouton');
}

window.onload = function() {
	var bouton = document.getElementById('button_timer');
	var timer;
	
	bouton.onmouseover = function() {
		timer = setInterval('fonction();', 1000);
	};
	bouton.onmouseout = function() {
		clearInterval(timer);
	};
};
</script>
0
didi
 
salut avion-f16,

Merci pour la réponse rapide

alors je viens d'essayer et cela ne fonctionne pas ...

je continue à creuser de mon côté si tu as une autre idée je suis preneur

:-)
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 509
 
Ça fonctionne parfaitement.
Si on laisse le curseur plus d'une seconde sur le bouton, la fonction "fonction()" est lancée.
0