Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/05/2011, 10h05   #1
Membre confirmé
 
Avatar de baggie
 
Inscription : octobre 2007
Messages : 676
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2007
Messages : 676
Points : 225
Points : 225
Par défaut Faire une action au tout premier clic d'un élément

Bonjour,

est-il possible de savoir quand est-ce que l'on fait le premier "clic" sur un élément d'une dialog ?

Je développe :

- ma page est constituée de checkbox et d'input.
- dès qu'un clic est réalisé sur une checkbox ou un input, on décide que l'utilisateur est donc sur cette page

Je souhaiterai récupérer la date et heure à laquelle il effectue le tout premier clic.

J'ai cherché sur le web mais visiblement, il n'y a pas de réponse.

Si vous avez une idée ... Merci !
baggie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 10h16   #2
Membre habitué
 
Avatar de omar24
 
Homme Omar
Inscription : septembre 2010
Messages : 146
Détails du profil
Informations personnelles :
Nom : Homme Omar
Localisation : Maroc

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2010
Messages : 146
Points : 125
Points : 125
Salut;
Je propose que tu ajoute à ton code une variable de contrôle qui égal au début à 0 après tu associes tous les éléments du dom susceptibles d’être à l'origine du clic que tu veux à l’évènement click.et tu fais un teste sur la variable si elle est égal à 0 l'incrémenter et faire le code pour créer la date courante si elle est différente à 0 ne rien faire.
omar24 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 10h29   #3
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
heu plus simple:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
<script type="text/javascript">
function firstclick(obj){
result="déja clické"
if(!obj.clicked){
   obj.clicked=true
	result ="premier click"
}
alert(result)
}
</script>
</head>
 
<body>
<input type="button" onclick="firstclick(this)" value="go" />
</body>
 
</html>
ce qui donne en jquery
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script type="text/javascript">
$(function(){
 
	$('.clicksurvey').click(function(){
		$(this).data('clicked',($(this).data('clicked')==undefined)?true:false)
		alert(($(this).data('clicked'))?"première fois":"déja cliqué")
	})
})
 
</script>
</head>
 
<body>
<input class="clicksurvey" type="button" onclick="" value="go" />
</body>
 
</html>
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 10h39   #4
Membre Expert
 
Avatar de Loceka
 
Tlouye Ci
Inscription : mars 2004
Messages : 1 450
Détails du profil
Informations personnelles :
Nom : Tlouye Ci

Informations forums :
Inscription : mars 2004
Messages : 1 450
Points : 2 149
Points : 2 149
Ce qui revient à peu près au même. ^_^

Un autre solution qui revient aussi au même mais avec une variable de moins :
Code :
1
2
3
4
5
6
var datePremierClic;
function firstclick(obj) {
  if (datePremierClic == undefined) {
    datePremierClic = new Date();
  }
}
Loceka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 10h48   #5
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 007
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 007
Points : 45 091
Points : 45 091
ben non je n'attribues pas de variable au départ, c'est inutile, suffit de tester si elle existe
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 13h11   #6
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 933
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 933
Points : 4 756
Points : 4 756
Bonjour,
pourquoi ne pas mettre l'observateur sur le parent
Code :
1
2
3
4
5
6
7
8
9
10
11
  <form onclick = "
    var oClick = this['click'];
    if( !oClick.value){
      oClick.value = new Date();
    }
  ;">
  <input type="hidden" name="click">
  <input type="text" name="champ_1"><br>
  <input type="text" name="champ_2"><br>
  <input type="text" name="champ_3"><br>
  </form>
par exemple
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 13h51   #7
Membre confirmé
 
Avatar de baggie
 
Inscription : octobre 2007
Messages : 676
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2007
Messages : 676
Points : 225
Points : 225
Merci pour toutes vos réponses.
Je vais voir si j'obtiens bien ce que je souhaite, et voir si je peux éviter d'avoir à ajouter une fonction à tous mes éléments, mais n'en mettre qu'une (fonction) générale.

Je vais essayer avec quelque chose comme ça :
Code :
$("#madialog input").click( ...)
tout en gardant la valeur "déja cliqué" ou "pas de clic".
baggie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 09h09   #8
Membre confirmé
 
Avatar de baggie
 
Inscription : octobre 2007
Messages : 676
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2007
Messages : 676
Points : 225
Points : 225
Problème résolu comme ceci :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
var clikage = 'non';
$("#prevtable input").live('click', function() {
	// Enregistrement de la date et de l'heure
	if(clikage == 'non')
	{
		clikage = 'oui';
		var date = new Date();
	}
	else clikage = 'rien';
});
baggie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 09h22   #9
Membre Expert
 
Avatar de Loceka
 
Tlouye Ci
Inscription : mars 2004
Messages : 1 450
Détails du profil
Informations personnelles :
Nom : Tlouye Ci

Informations forums :
Inscription : mars 2004
Messages : 1 450
Points : 2 149
Points : 2 149
ta variable "clikage" ne sert à rien, le mieux serait de se servir directement de la date (cf mon post et celui de Spacefrog). Mais si tu veux t'en servir quand même (de "clikage") utilise au moins un vrai booléen...
Loceka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 09h23   #10
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

Chaque événement contient la date à laquelle il se produit !

Voir : http://www.developpez.net/forums/d10...s/#post5973536
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/05/2011, 13h51   #11
Membre confirmé
 
Avatar de baggie
 
Inscription : octobre 2007
Messages : 676
Détails du profil
Informations personnelles :
Âge : 23
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2007
Messages : 676
Points : 225
Points : 225
Loceka > oui en effet c'est un peu n'importe quoi Je vais y remédier !

danielhagnoul > oh très intéressant, merci de l'info !
baggie est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h49.


 
 
 
 
Partenaires

Hébergement Web