Fonction au Clic JQuery

Fermé
Nightswords Messages postés 10 Date d'inscription mercredi 21 juillet 2010 Statut Membre Dernière intervention 9 août 2011 - 18 janv. 2011 à 12:11
Nightswords Messages postés 10 Date d'inscription mercredi 21 juillet 2010 Statut Membre Dernière intervention 9 août 2011 - 18 janv. 2011 à 14:24
Bonjour,

J'aimerais faire une fonction qui execute un script uniquement quand l'utilisateur garde le clic de la souris actif. A partir du moment où il le relâche, tout s'arrête.

Je suis partie sur le mousedown() de Jquery, mais les instructions à l'intérieur s'execute même après avoir relâché le clic (normal).

Il faudrait qu'avec mouseup() je puisse faire une sorte de die(), qui annule toute action en cours dans le mousedown().

J'espère avoir été clair, sinon n'hésitez pas.

Merci d'avance pour votre aide !

A voir également:

3 réponses

gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 171
18 janv. 2011 à 12:26
Bonjour,

as-tu essayé comme ceci:

$('input').mousedown(function{
    $('input').mousemove({
     // CODE ICI
    });
});


A+
Gaerebut
0
Nightswords Messages postés 10 Date d'inscription mercredi 21 juillet 2010 Statut Membre Dernière intervention 9 août 2011 4
Modifié par Nightswords le 18/01/2011 à 14:09
Effectivement sa marche plutôt bien !

Ceci-dit, j'ai la fonction mousemove() continu même apres avoir relâché le clic.

il faudrait la stopper apres le mouseup().

J'avais pensé à :

$("#content").mousedown(function(){ 
 $('#content').mousemove(function(){ 
         alert('1'); 
        }); 
}); 

$("#content").mouseup(function(){ 
       $("#content").die("mousemove"); 
}); 


mais sans succès.
0
Nightswords Messages postés 10 Date d'inscription mercredi 21 juillet 2010 Statut Membre Dernière intervention 9 août 2011 4
18 janv. 2011 à 14:24
J'ai trouvé, voilà la solution pour ceux que ça intéresse :

var clicking = false;

$('#content').mousedown(function(){
     clicking = true;
});
	
$(document).mouseup(function(){
      clicking = false;
});
	
$('#content').mousemove(function(){
      if(clicking == false) return;
      //SCRIPT
});
0