|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Salut,
Voilà, j'ai la fonction javascript suivante : > function partieJoueurOut (joueur_id, lien) > { > lien.parentNode.style.display = "none"; > x_maj_stats (joueur_id, $idPartie, majFinie); > } et le code php suivant : > <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom est OUT</a></li> (Les variables $ sont des variables php, le code est généré en php). Sur une certaine condition, je souhaite pouvoir déclencher artificiellement la fonction affectée au onclick d'un certain lien; je peux sans problème repérer le lien en question dans la page (c'est le seul dont le display ne soit pas encore à none), et je voudrais pouvoir déclencher la fonction affectée à son évènement onclick. Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? Merci |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
Jean Ceugniet a écrit :
> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? cible.onclick() ; -- Mickaël Wolff aka Lupus Michaelis http://lupusmic.org |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
Jean Ceugniet a écrit :
> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? cible.onclick() ; -- Mickaël Wolff aka Lupus Michaelis http://lupusmic.org |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
En réponse à Jean Ceugniet qui écrivit, en date du : 1/09/07 12:21, le
message suivant : > Salut, > > Voilà, j'ai la fonction javascript suivante : > >> function partieJoueurOut (joueur_id, lien) >> { >> lien.parentNode.style.display = "none"; >> x_maj_stats (joueur_id, $idPartie, majFinie); >> } > > > > et le code php suivant : > >> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom est >> OUT</a></li> > > (Les variables $ sont des variables php, le code est généré en php). > Sur une certaine condition, je souhaite pouvoir déclencher > artificiellement la fonction affectée au onclick d'un certain lien; je > peux sans problème repérer le lien en question dans la page (c'est le > seul dont le display ne soit pas encore à none), et je voudrais pouvoir > déclencher la fonction affectée à son évènement onclick. il suffit donc de lancer cette fonction, non ? this.onclick(); > Merci toujours chercher au plus simple :-) var truc = document.getElementsByTagName('A'); for(var i=0; i<truc.length; i++) if(truc[i].style.display!=='none') { truc[i].onclick(); return false; } ou var truc = document.links; for(var i=0; i<truc.length; i++) if(truc[i].href && truc[i].style && truc[i].style.display!=='none') { truc[i].onclick(); return false; } autre exemple : <form onsubmit="return false;"> <button name="visu" onclick="alert('vu');">voir</button> <button onclick="visu.click();">cliquer bouton [voir]</button> </form> <p><a href="#" onclick="document.forms[0].visu.click();">Cliquer le bouton [voir]</a> La fonction JavaScript : element.click(); ne fonctionnerait que pour des boutons de formulaires à + |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
En réponse à Jean Ceugniet qui écrivit, en date du : 1/09/07 12:21, le
message suivant : > Salut, > > Voilà, j'ai la fonction javascript suivante : > >> function partieJoueurOut (joueur_id, lien) >> { >> lien.parentNode.style.display = "none"; >> x_maj_stats (joueur_id, $idPartie, majFinie); >> } > > > > et le code php suivant : > >> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom est >> OUT</a></li> > > (Les variables $ sont des variables php, le code est généré en php). > Sur une certaine condition, je souhaite pouvoir déclencher > artificiellement la fonction affectée au onclick d'un certain lien; je > peux sans problème repérer le lien en question dans la page (c'est le > seul dont le display ne soit pas encore à none), et je voudrais pouvoir > déclencher la fonction affectée à son évènement onclick. il suffit donc de lancer cette fonction, non ? this.onclick(); > Merci toujours chercher au plus simple :-) var truc = document.getElementsByTagName('A'); for(var i=0; i<truc.length; i++) if(truc[i].style.display!=='none') { truc[i].onclick(); return false; } ou var truc = document.links; for(var i=0; i<truc.length; i++) if(truc[i].href && truc[i].style && truc[i].style.display!=='none') { truc[i].onclick(); return false; } autre exemple : <form onsubmit="return false;"> <button name="visu" onclick="alert('vu');">voir</button> <button onclick="visu.click();">cliquer bouton [voir]</button> </form> <p><a href="#" onclick="document.forms[0].visu.click();">Cliquer le bouton [voir]</a> La fonction JavaScript : element.click(); ne fonctionnerait que pour des boutons de formulaires à + |
|
|
|
#6 |
|
Messages: n/a
Hébergeur: |
Ah ben oui. Je concevais onclick comme un évènement auquel on affectait
une méthode, pas comme une méthode lui-même. Merci à tous ![]() |
|
|
|
#7 |
|
Messages: n/a
Hébergeur: |
Ah ben oui. Je concevais onclick comme un évènement auquel on affectait
une méthode, pas comme une méthode lui-même. Merci à tous ![]() |
|
|
|
#8 |
|
Messages: n/a
Hébergeur: |
En réponse à Jean Ceugniet qui écrivit, en date du : 1/09/07 22:23, le
message suivant : > Ah ben oui. Je concevais onclick comme un évènement auquel on affectait > une méthode, pas comme une méthode lui-même. Je ne sais si c'est tout à fait ça ... ? essaie : alert(truc.onclick); on voit qu'on récupère la fonction contenue dans le onclick de truc par l'adjonction de () à cette récup on en lance l'appel. .. |
|
|
|
#9 |
|
Messages: n/a
Hébergeur: |
En réponse à Jean Ceugniet qui écrivit, en date du : 1/09/07 22:23, le
message suivant : > Ah ben oui. Je concevais onclick comme un évènement auquel on affectait > une méthode, pas comme une méthode lui-même. Je ne sais si c'est tout à fait ça ... ? essaie : alert(truc.onclick); on voit qu'on récupère la fonction contenue dans le onclick de truc par l'adjonction de () à cette récup on en lance l'appel. .. |
|
|
|
#10 |
|
Messages: n/a
Hébergeur: |
Bonjour à Jean Ceugniet <jean.ceugniet@gmail.com> qui nous a écrit :
> Salut, > > Voilà, j'ai la fonction javascript suivante : > >> function partieJoueurOut (joueur_id, lien) >> { >> lien.parentNode.style.display = "none"; >> x_maj_stats (joueur_id, $idPartie, majFinie); >> } > > > > et le code php suivant : > >> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom >> est OUT</a></li> > > (Les variables $ sont des variables php, le code est généré en php). > Sur une certaine condition, je souhaite pouvoir déclencher > artificiellement la fonction affectée au onclick d'un certain lien; je > peux sans problème repérer le lien en question dans la page (c'est le > seul dont le display ne soit pas encore à none), et je voudrais > pouvoir déclencher la fonction affectée à son évènement onclick. > Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? > > Merci Méfie-toi juste de ton code dit php avec ta variable $joueur_id car le généré Html sera du type : <a href="#" onclick="partieJoueurOut(12345, this);">TOTO est OUT</a> Tout va bien si $joueur_id est numérique, mais attention s'il peut être *alpha*. Il faut alors coder en php : <a href="#" onclick="partieJoueurOut('$joueur_id', this);">$nom est OUT</a> (voir les apostrophes autour de $joueur_id) -- Cordialement, Thierry ;-) |
|
|
|
#11 |
|
Messages: n/a
Hébergeur: |
Bonjour à Jean Ceugniet <jean.ceugniet@gmail.com> qui nous a écrit :
> Salut, > > Voilà, j'ai la fonction javascript suivante : > >> function partieJoueurOut (joueur_id, lien) >> { >> lien.parentNode.style.display = "none"; >> x_maj_stats (joueur_id, $idPartie, majFinie); >> } > > > > et le code php suivant : > >> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom >> est OUT</a></li> > > (Les variables $ sont des variables php, le code est généré en php). > Sur une certaine condition, je souhaite pouvoir déclencher > artificiellement la fonction affectée au onclick d'un certain lien; je > peux sans problème repérer le lien en question dans la page (c'est le > seul dont le display ne soit pas encore à none), et je voudrais > pouvoir déclencher la fonction affectée à son évènement onclick. > Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? > > Merci Méfie-toi juste de ton code dit php avec ta variable $joueur_id car le généré Html sera du type : <a href="#" onclick="partieJoueurOut(12345, this);">TOTO est OUT</a> Tout va bien si $joueur_id est numérique, mais attention s'il peut être *alpha*. Il faut alors coder en php : <a href="#" onclick="partieJoueurOut('$joueur_id', this);">$nom est OUT</a> (voir les apostrophes autour de $joueur_id) -- Cordialement, Thierry ;-) |
|
|
|
#12 |
|
Messages: n/a
Hébergeur: |
Olivier Miakinen a écrit :
> Le 04/09/2007 14:43, Bruno Desthuilliers a écrit : > >>>kess que ça veut dire "iconifier" ? >>> >> >>la fenêtre disparait (sans que l'appli soit fermée), et une icone de >>l'appli apparait dans la barre des taches... > > > La version de Windows en français que j'utilise appelle ça « réduire ». > Et dans un fichier de configuration sous AIX c'est « minimize ». Merci Olivier !-) |
|
|
|
#13 |
|
Messages: n/a
Hébergeur: |
Olivier Miakinen a écrit :
> Le 04/09/2007 14:43, Bruno Desthuilliers a écrit : > >>>kess que ça veut dire "iconifier" ? >>> >> >>la fenêtre disparait (sans que l'appli soit fermée), et une icone de >>l'appli apparait dans la barre des taches... > > > La version de Windows en français que j'utilise appelle ça « réduire ». > Et dans un fichier de configuration sous AIX c'est « minimize ». Merci Olivier !-) |
|
|
|
#14 |
|
Messages: n/a
Hébergeur: |
ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07 > 14:43, le message suivant : > >> ASM a écrit : >> >>> >>> kess que ça veut dire "iconifier" ? >>> >> la fenêtre disparait (sans que l'appli soit fermée), et une icone de >> l'appli apparait dans la barre des taches... > > > > Ha oui ! Rigolo comme comportement :-) > > Ces IE ne nous épargnent vraiment aucune facétie ! N'est-ce pas ?-) Bon, accessoirement, j'ai (partiellement) résolu le problème, en partie grâce à un autre de tes posts dans ce thread qui m'a rappelé l'existence de la fonction click(). Qui - dois-je le préciser - fonctionne sous IE (même pour un lien), mais lève une exception sous mon vieux mozilla... J'attends de tester ça demain sous une version récente de Firefox, mais je subodore que là encore, on est dans une portabilité optimale ![]() Enfin bref, c'est que du bonheur. |
|
|
|
#15 |
|
Messages: n/a
Hébergeur: |
ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07 > 14:43, le message suivant : > >> ASM a écrit : >> >>> >>> kess que ça veut dire "iconifier" ? >>> >> la fenêtre disparait (sans que l'appli soit fermée), et une icone de >> l'appli apparait dans la barre des taches... > > > > Ha oui ! Rigolo comme comportement :-) > > Ces IE ne nous épargnent vraiment aucune facétie ! N'est-ce pas ?-) Bon, accessoirement, j'ai (partiellement) résolu le problème, en partie grâce à un autre de tes posts dans ce thread qui m'a rappelé l'existence de la fonction click(). Qui - dois-je le préciser - fonctionne sous IE (même pour un lien), mais lève une exception sous mon vieux mozilla... J'attends de tester ça demain sous une version récente de Firefox, mais je subodore que là encore, on est dans une portabilité optimale ![]() Enfin bref, c'est que du bonheur. |
|
|
|
#16 |
|
Messages: n/a
Hébergeur: |
Cenekemoi a écrit :
> Bonjour à Jean Ceugniet <jean.ceugniet@gmail.com> qui nous a écrit : >> Salut, >> >> Voilà, j'ai la fonction javascript suivante : >> >>> function partieJoueurOut (joueur_id, lien) >>> { >>> lien.parentNode.style.display = "none"; >>> x_maj_stats (joueur_id, $idPartie, majFinie); >>> } >> >> >> >> et le code php suivant : >> >>> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom >>> est OUT</a></li> >> >> (Les variables $ sont des variables php, le code est généré en php). >> Sur une certaine condition, je souhaite pouvoir déclencher >> artificiellement la fonction affectée au onclick d'un certain lien; je >> peux sans problème repérer le lien en question dans la page (c'est le >> seul dont le display ne soit pas encore à none), et je voudrais >> pouvoir déclencher la fonction affectée à son évènement onclick. >> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? >> >> Merci > > Méfie-toi juste de ton code dit php avec ta variable $joueur_id car le > généré Html sera du type : > > <a href="#" onclick="partieJoueurOut(12345, this);">TOTO est OUT</a> > > Tout va bien si $joueur_id est numérique, mais attention s'il peut être > *alpha*. Il faut alors coder en php : > > <a href="#" onclick="partieJoueurOut('$joueur_id', this);">$nom est > OUT</a> > > (voir les apostrophes autour de $joueur_id) > Il est numérique (mais j'y penserai pour un prochain truc merci) |
|
|
|
#17 |
|
Messages: n/a
Hébergeur: |
Cenekemoi a écrit :
> Bonjour à Jean Ceugniet <jean.ceugniet@gmail.com> qui nous a écrit : >> Salut, >> >> Voilà, j'ai la fonction javascript suivante : >> >>> function partieJoueurOut (joueur_id, lien) >>> { >>> lien.parentNode.style.display = "none"; >>> x_maj_stats (joueur_id, $idPartie, majFinie); >>> } >> >> >> >> et le code php suivant : >> >>> <li><a href="#" onclick="partieJoueurOut($joueur_id, this);">$nom >>> est OUT</a></li> >> >> (Les variables $ sont des variables php, le code est généré en php). >> Sur une certaine condition, je souhaite pouvoir déclencher >> artificiellement la fonction affectée au onclick d'un certain lien; je >> peux sans problème repérer le lien en question dans la page (c'est le >> seul dont le display ne soit pas encore à none), et je voudrais >> pouvoir déclencher la fonction affectée à son évènement onclick. >> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? >> >> Merci > > Méfie-toi juste de ton code dit php avec ta variable $joueur_id car le > généré Html sera du type : > > <a href="#" onclick="partieJoueurOut(12345, this);">TOTO est OUT</a> > > Tout va bien si $joueur_id est numérique, mais attention s'il peut être > *alpha*. Il faut alors coder en php : > > <a href="#" onclick="partieJoueurOut('$joueur_id', this);">$nom est > OUT</a> > > (voir les apostrophes autour de $joueur_id) > Il est numérique (mais j'y penserai pour un prochain truc merci) |
|
|
|
#18 |
|
Messages: n/a
Hébergeur: |
Mickaël Wolff a écrit :
> Bruno Desthuilliers a écrit : > > >>Je confirme. >>- sous FF, utiliser: >> document.getElementById('mon_lien').onclick(); >>- sous IE, utiliser: >> document.getElementById('mon_lien').click(); > > > Ce qui est amusant, c'est que seul HTMLInputElement.click() est prévu > par la recommandation du W3C > <http://www.w3.org/TR/DOM-Level-2-HTML/html.html> > > Je comprends mieux cette incohérence entre les navigateurs ! Ce qui est le plus amusant AMHA (et continue à m'échapper...), c'est la réaction de IE sur l'utilisation de element.onclick(). Si c'est systématiquement reproductible, il y a de quoi faire un petit script très énervant pour les utilisateurs de cette bouse infâme^Mmerveille de la technologie moderne !-) |
|
|
|
#19 |
|
Messages: n/a
Hébergeur: |
Mickaël Wolff a écrit :
> Bruno Desthuilliers a écrit : > > >>Je confirme. >>- sous FF, utiliser: >> document.getElementById('mon_lien').onclick(); >>- sous IE, utiliser: >> document.getElementById('mon_lien').click(); > > > Ce qui est amusant, c'est que seul HTMLInputElement.click() est prévu > par la recommandation du W3C > <http://www.w3.org/TR/DOM-Level-2-HTML/html.html> > > Je comprends mieux cette incohérence entre les navigateurs ! Ce qui est le plus amusant AMHA (et continue à m'échapper...), c'est la réaction de IE sur l'utilisation de element.onclick(). Si c'est systématiquement reproductible, il y a de quoi faire un petit script très énervant pour les utilisateurs de cette bouse infâme^Mmerveille de la technologie moderne !-) |
|
|
|
#20 |
|
Messages: n/a
Hébergeur: |
Mickaël Wolff a écrit :
> Jean Ceugniet a écrit : > >> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? > > cible.onclick() ; > A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un setTimeout): ça m'iconifie la fenêtre ! j'ai pas encore eu le temps de revenir sur le pb pour essayer de l'isoler proprement, mais si qqu'un a déjà vu ça et qu'il a trouvé le joint, l'info m'intéresse... TIA |
|
|
|
#21 |
|
Messages: n/a
Hébergeur: |
Mickaël Wolff a écrit :
> Jean Ceugniet a écrit : > >> Comme faire pour obtenir l'équivalent d'un "execute (this.onclick);" ? > > cible.onclick() ; > A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un setTimeout): ça m'iconifie la fenêtre ! j'ai pas encore eu le temps de revenir sur le pb pour essayer de l'isoler proprement, mais si qqu'un a déjà vu ça et qu'il a trouvé le joint, l'info m'intéresse... TIA |
|
|
|
#22 |
|
Messages: n/a
Hébergeur: |
En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
13:19, le message suivant : >> >> cible.onclick() ; >> > > A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un > setTimeout): ça m'iconifie la fenêtre ! kess que ça veut dire "iconifier" ? |
|
|
|
#23 |
|
Messages: n/a
Hébergeur: |
En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
13:19, le message suivant : >> >> cible.onclick() ; >> > > A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un > setTimeout): ça m'iconifie la fenêtre ! kess que ça veut dire "iconifier" ? |
|
|
|
#24 |
|
Messages: n/a
Hébergeur: |
ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07 > 13:19, le message suivant : >>> >>> cible.onclick() ; >>> >> >> A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un >> setTimeout): ça m'iconifie la fenêtre ! > > kess que ça veut dire "iconifier" ? > la fenêtre disparait (sans que l'appli soit fermée), et une icone de l'appli apparait dans la barre des taches... |
|
|
|
#25 |
|
Messages: n/a
Hébergeur: |
ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07 > 13:19, le message suivant : >>> >>> cible.onclick() ; >>> >> >> A ce propos, sous IE7, j'ai une bonne blague avec ça (en combi avec un >> setTimeout): ça m'iconifie la fenêtre ! > > kess que ça veut dire "iconifier" ? > la fenêtre disparait (sans que l'appli soit fermée), et une icone de l'appli apparait dans la barre des taches... |
|
![]() |
| Outils de la discussion | |
|
|