PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > fr.comp.lang.javascript > Comment déclencher artificiellement la fonction affecté à onclick ?
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
Comment déclencher artificiellement la fonction affecté à onclick ?

Réponse
 
LinkBack Outils de la discussion
Vieux 04/09/2007, 16h03   #26
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 ».
  Réponse avec citation
Vieux 04/09/2007, 16h03   #27
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 ».
  Réponse avec citation
Vieux 04/09/2007, 17h21   #28
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Olivier Miakinen qui écrivit, en date du : 4/09/07 17:03,
le message suivant :
> 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 ».


Et moi j'appelle ça "replier" (en barre des tâches).
  Réponse avec citation
Vieux 04/09/2007, 17h21   #29
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Olivier Miakinen qui écrivit, en date du : 4/09/07 17:03,
le message suivant :
> 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 ».


Et moi j'appelle ça "replier" (en barre des tâches).
  Réponse avec citation
Vieux 04/09/2007, 17h23   #30
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 !
  Réponse avec citation
Vieux 04/09/2007, 17h23   #31
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 !
  Réponse avec citation
Vieux 04/09/2007, 17h27   #32
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Olivier Miakinen qui écrivit, en date du : 4/09/07 17:03,
le message suivant :
> 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 comment appellent-ils ce que ça fait quand on clique le bouton (du
milieu) de réduction de la fenêtre ?

> Et dans un fichier de configuration sous AIX c'est « minimize ».


Je continue à préférer "replier" ;-)
bien que "minimise" me semble pas mal malgrè qu'on puisse minimiser la
fenêtre sans pour autant la replier.
  Réponse avec citation
Vieux 04/09/2007, 17h27   #33
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Olivier Miakinen qui écrivit, en date du : 4/09/07 17:03,
le message suivant :
> 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 comment appellent-ils ce que ça fait quand on clique le bouton (du
milieu) de réduction de la fenêtre ?

> Et dans un fichier de configuration sous AIX c'est « minimize ».


Je continue à préférer "replier" ;-)
bien que "minimise" me semble pas mal malgrè qu'on puisse minimiser la
fenêtre sans pour autant la replier.
  Réponse avec citation
Vieux 04/09/2007, 17h51   #34
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Le 04/09/2007 18:27, ASM a écrit :
>>
>> La version de Windows en français que j'utilise appelle ça « réduire ».

>
> et comment appellent-ils ce que ça fait quand on clique le bouton (du
> milieu) de réduction de la fenêtre ?


Le bouton du milieu s'appelle « agrandir » puisque mes fenêtres ne sont
jamais en plein écran. Une fois agrandi (j'aurais dit « maximisé »), le
bouton devient « niveau inférieur » pour revenir à l'état normal.

>> Et dans un fichier de configuration sous AIX c'est « minimize ».

>
> Je continue à préférer "replier" ;-)
> bien que "minimise" me semble pas mal malgrè qu'on puisse minimiser la
> fenêtre sans pour autant la replier.


Sur AIX, quand la fenêtre est à l'état « window » et que je « minimize »
elle passe à l'état « icon » (c'est vraiment une icone, et pas un bouton
dans une hypothétique barre des tâches, laquelle n'existe pas). Quand la
fenêtre est à l'état « icon » alors je « normalize » pour la ramener à
l'état « window ». Je n'ai pas le truc dans mon fichier de config, mais
je parie que passer la fenêtre en plein écran s'appellerait « maximize ».
  Réponse avec citation
Vieux 04/09/2007, 17h51   #35
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Le 04/09/2007 18:27, ASM a écrit :
>>
>> La version de Windows en français que j'utilise appelle ça « réduire ».

>
> et comment appellent-ils ce que ça fait quand on clique le bouton (du
> milieu) de réduction de la fenêtre ?


Le bouton du milieu s'appelle « agrandir » puisque mes fenêtres ne sont
jamais en plein écran. Une fois agrandi (j'aurais dit « maximisé »), le
bouton devient « niveau inférieur » pour revenir à l'état normal.

>> Et dans un fichier de configuration sous AIX c'est « minimize ».

>
> Je continue à préférer "replier" ;-)
> bien que "minimise" me semble pas mal malgrè qu'on puisse minimiser la
> fenêtre sans pour autant la replier.


Sur AIX, quand la fenêtre est à l'état « window » et que je « minimize »
elle passe à l'état « icon » (c'est vraiment une icone, et pas un bouton
dans une hypothétique barre des tâches, laquelle n'existe pas). Quand la
fenêtre est à l'état « icon » alors je « normalize » pour la ramener à
l'état « window ». Je n'ai pas le truc dans mon fichier de config, mais
je parie que passer la fenêtre en plein écran s'appellerait « maximize ».
  Réponse avec citation
Vieux 05/09/2007, 14h23   #36
Bruno Desthuilliers
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Bruno Desthuilliers a écrit :
> 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


Je confirme.
- sous FF, utiliser:
document.getElementById('mon_lien').onclick();
- sous IE, utiliser:
document.getElementById('mon_lien').click();

<troll cible='ASM'>
Ou alors se simplifier la vie avec jQuery:
$('#mon_lien').click();

!-)
</troll>
  Réponse avec citation
Vieux 05/09/2007, 14h23   #37
Bruno Desthuilliers
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Bruno Desthuilliers a écrit :
> 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


Je confirme.
- sous FF, utiliser:
document.getElementById('mon_lien').onclick();
- sous IE, utiliser:
document.getElementById('mon_lien').click();

<troll cible='ASM'>
Ou alors se simplifier la vie avec jQuery:
$('#mon_lien').click();

!-)
</troll>
  Réponse avec citation
Vieux 05/09/2007, 17h04   #38
Mickaël Wolff
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 !
--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
  Réponse avec citation
Vieux 05/09/2007, 17h04   #39
Mickaël Wolff
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

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 !
--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
  Réponse avec citation
Vieux 05/09/2007, 22h50   #40
Laurent vilday
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Mickaël Wolff a écrit :
> 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 !


<div id="lolo"></div>

<form><input type="text"></form>

<script type="text/javascript">
window.onload = function()
{
var E = document.getElementById('lolo');
alert('1) ' + typeof E.onclick + '/' + typeof E.click);

E = document.forms[0].elements[0];
alert('2) ' + typeof E.onclick + '/' + typeof E.click);
};
</script>


FX2 :
1) undefined/undefined
2) undefined/function

IE7 :
1) object/object
2) object/object

Op9 :
1) object/undefined
2) object/function

La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
*INPUT* elements whose type attribute has one of the following values:
"button", "checkbox", "radio", "reset", or "submit". -

Ce qui en français : Simule un clic de souris. Pour les éléments *INPUT*
dont l'attribut type à une des valeurs suivantes : "button", "checkbox",
"radio", "reset" ou "submit"

Donc seul FX2 et Op9 implémentent (sur les 3 misérables tests que j'ai
fait) correctement cette partie de la RFC et si j'ai tout compris lol ce
qui n'est pas gagné. Je ne m'attendais guère à mieux de la part du IE -
eh oui, on ne parle plus /de/ IE mais /du/ IE, ce wild animal

Par contre d'ou provient le onclick pour Opéra, je ne sais pas.
Tentative d'émulation du comportement IE probablement.

M'enfin tout cela ne m'inspire comme souvent que ceci : sniff sniff

--
laurent
  Réponse avec citation
Vieux 05/09/2007, 23h02   #41
Laurent vilday
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Oups, nouvelle édition rectifiant un précédent post annulé. Mais on sait
tous à quel point les annulations sont hummm disons aléatoires. Prière
d'ignorer le précédent qui raconte un paquet de bêtises shut !

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>


<div id="lolo"></div>

<form>
<input type="text">
<input type="button">
</form>

<script type="text/javascript">
window.onload = function()
{
var E = document.getElementById('lolo');
alert('1) ' + typeof E.onclick + '/' + typeof E.click);

E = document.forms[0].elements[0];
alert('2) ' + typeof E.onclick + '/' + typeof E.click);

E = document.forms[0].elements[1];
alert('3) ' + typeof E.onclick + '/' + typeof E.click);
};
</script>


FX2 :
1) undefined/undefined // OUI / OUI
2) undefined/function // OUI / non
3) undefined/function // OUI / OUI

IE7 :
1) object/object // non / non
2) object/object // non / non
3) object/object // non / non

Op9 :
1) object/undefined // non / OUI
2) object/function // non / non
3) object/function // non / OUI

D'ou provient le onclick pour Opéra, je ne sais pas. Je suppose une
autre tentative d'émulation du comportement du IE.

La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
*INPUT* elements whose type attribute has one of the following values:
"button", "checkbox", "radio", "reset", or "submit". -

Ce qui en français : Simule un clic de souris. Pour les éléments *INPUT*
dont l'attribut type à une des valeurs suivantes : "button", "checkbox",
"radio", "reset" ou "submit"

Donc IE a tort tout le temps, jusque là rien de bien étonnant.

FX2 et Opéra9 ont raison - sur cette partie de la RFC - pour le test 1
(le div) et pour le test 3 (input button) et tous les deux se plantent
pour le test 2 (input type) parce que à ce jour "text" ne fait pas
partie de la liste énumérée (button, checkbox, radio, reset et submit)

M'enfin tout cela ne m'inspire comme souvent que ceci : sniff sniff

--
laurent
  Réponse avec citation
Vieux 05/09/2007, 23h02   #42
Laurent vilday
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Oups, nouvelle édition rectifiant un précédent post annulé. Mais on sait
tous à quel point les annulations sont hummm disons aléatoires. Prière
d'ignorer le précédent qui raconte un paquet de bêtises shut !

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>


<div id="lolo"></div>

<form>
<input type="text">
<input type="button">
</form>

<script type="text/javascript">
window.onload = function()
{
var E = document.getElementById('lolo');
alert('1) ' + typeof E.onclick + '/' + typeof E.click);

E = document.forms[0].elements[0];
alert('2) ' + typeof E.onclick + '/' + typeof E.click);

E = document.forms[0].elements[1];
alert('3) ' + typeof E.onclick + '/' + typeof E.click);
};
</script>


FX2 :
1) undefined/undefined // OUI / OUI
2) undefined/function // OUI / non
3) undefined/function // OUI / OUI

IE7 :
1) object/object // non / non
2) object/object // non / non
3) object/object // non / non

Op9 :
1) object/undefined // non / OUI
2) object/function // non / non
3) object/function // non / OUI

D'ou provient le onclick pour Opéra, je ne sais pas. Je suppose une
autre tentative d'émulation du comportement du IE.

La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
*INPUT* elements whose type attribute has one of the following values:
"button", "checkbox", "radio", "reset", or "submit". -

Ce qui en français : Simule un clic de souris. Pour les éléments *INPUT*
dont l'attribut type à une des valeurs suivantes : "button", "checkbox",
"radio", "reset" ou "submit"

Donc IE a tort tout le temps, jusque là rien de bien étonnant.

FX2 et Opéra9 ont raison - sur cette partie de la RFC - pour le test 1
(le div) et pour le test 3 (input button) et tous les deux se plantent
pour le test 2 (input type) parce que à ce jour "text" ne fait pas
partie de la liste énumérée (button, checkbox, radio, reset et submit)

M'enfin tout cela ne m'inspire comme souvent que ceci : sniff sniff

--
laurent
  Réponse avec citation
Vieux 06/09/2007, 12h48   #43
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Laurent vilday qui écrivit, en date du : 6/09/07 0:02, le
message suivant :
> Oups, nouvelle édition rectifiant un précédent post annulé. Mais on sait
> tous à quel point les annulations sont hummm disons aléatoires. Prière
> d'ignorer le précédent qui raconte un paquet de bêtises shut !


Tommache ! y m'plaisait bien :-)

> 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>

>
> <div id="lolo"></div>
>
> <form>
> <input type="text">
> <input type="button">


<textarea></textarea>

> </form>
>
> <script type="text/javascript">
> window.onload = function()
> {
> var E = document.getElementById('lolo');
> alert('1) ' + typeof E.onclick + '/' + typeof E.click);
>
> E = document.forms[0].elements[0];
> alert('2) ' + typeof E.onclick + '/' + typeof E.click);
>
> E = document.forms[0].elements[1];
> alert('3) ' + typeof E.onclick + '/' + typeof E.click);


E = document.forms[0].elements[2];
alert('4) ' + typeof E.onclick + '/' + typeof E.click);

> };
> </script>
>
>
> FX2 :
> 1) undefined/undefined // OUI / OUI
> 2) undefined/function // OUI / non
> 3) undefined/function // OUI / OUI


4) undefined/undefined

> IE7 :
> 1) object/object // non / non
> 2) object/object // non / non
> 3) object/object // non / non


IE-Mac :
1) 2) 3) 4) object/function

iCab3.0.3
1) 2) 3) 4) undefined/function

Safari2
1) object/undefined
2) undefined/function
3) undefined/function
4) object/undefined

> Op9 :
> 1) object/undefined // non / OUI
> 2) object/function // non / non
> 3) object/function // non / OUI


Op9-Mac
1) undefined/undefined
2) undefined/function
3) undefined/function
4) undefined/undefined

NC4.5 :
... ? ...

Et maintenant ? avec tous ces cas ... keféton ?

> D'ou provient le onclick pour Opéra, je ne sais pas. Je suppose une
> autre tentative d'émulation du comportement du IE.
>
> La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
> *INPUT* elements whose type attribute has one of the following values:
> "button", "checkbox", "radio", "reset", or "submit". -


Oui, bon, les brouteurs simplifient peut-être par form.elements ?
bien que pour certains ... et le textarea ?

> M'enfin tout cela ne m'inspire comme souvent que ceci : sniff sniff


ou bouhaaa! bouhaaa!
  Réponse avec citation
Vieux 06/09/2007, 12h48   #44
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Laurent vilday qui écrivit, en date du : 6/09/07 0:02, le
message suivant :
> Oups, nouvelle édition rectifiant un précédent post annulé. Mais on sait
> tous à quel point les annulations sont hummm disons aléatoires. Prière
> d'ignorer le précédent qui raconte un paquet de bêtises shut !


Tommache ! y m'plaisait bien :-)

> 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>

>
> <div id="lolo"></div>
>
> <form>
> <input type="text">
> <input type="button">


<textarea></textarea>

> </form>
>
> <script type="text/javascript">
> window.onload = function()
> {
> var E = document.getElementById('lolo');
> alert('1) ' + typeof E.onclick + '/' + typeof E.click);
>
> E = document.forms[0].elements[0];
> alert('2) ' + typeof E.onclick + '/' + typeof E.click);
>
> E = document.forms[0].elements[1];
> alert('3) ' + typeof E.onclick + '/' + typeof E.click);


E = document.forms[0].elements[2];
alert('4) ' + typeof E.onclick + '/' + typeof E.click);

> };
> </script>
>
>
> FX2 :
> 1) undefined/undefined // OUI / OUI
> 2) undefined/function // OUI / non
> 3) undefined/function // OUI / OUI


4) undefined/undefined

> IE7 :
> 1) object/object // non / non
> 2) object/object // non / non
> 3) object/object // non / non


IE-Mac :
1) 2) 3) 4) object/function

iCab3.0.3
1) 2) 3) 4) undefined/function

Safari2
1) object/undefined
2) undefined/function
3) undefined/function
4) object/undefined

> Op9 :
> 1) object/undefined // non / OUI
> 2) object/function // non / non
> 3) object/function // non / OUI


Op9-Mac
1) undefined/undefined
2) undefined/function
3) undefined/function
4) undefined/undefined

NC4.5 :
... ? ...

Et maintenant ? avec tous ces cas ... keféton ?

> D'ou provient le onclick pour Opéra, je ne sais pas. Je suppose une
> autre tentative d'émulation du comportement du IE.
>
> La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
> *INPUT* elements whose type attribute has one of the following values:
> "button", "checkbox", "radio", "reset", or "submit". -


Oui, bon, les brouteurs simplifient peut-être par form.elements ?
bien que pour certains ... et le textarea ?

> M'enfin tout cela ne m'inspire comme souvent que ceci : sniff sniff


ou bouhaaa! bouhaaa!
  Réponse avec citation
Vieux 06/09/2007, 13h06   #45
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
11:39, le message suivant :
>
> 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 !-)


J'ai fini par me mettre un émulateur Win XP, mais je n'y ai que IE6
Il ne semble rien replier avec bidule.onclick()

Il m'est impossible chez M$ de télécharger IE7 depuis mon Mac
(sont vraiment c....t chez M$ !)
on peut le télécharger ailleurs ?
  Réponse avec citation
Vieux 06/09/2007, 13h06   #46
ASM
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
11:39, le message suivant :
>
> 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 !-)


J'ai fini par me mettre un émulateur Win XP, mais je n'y ai que IE6
Il ne semble rien replier avec bidule.onclick()

Il m'est impossible chez M$ de télécharger IE7 depuis mon Mac
(sont vraiment c....t chez M$ !)
on peut le télécharger ailleurs ?
  Réponse avec citation
Vieux 06/09/2007, 14h06   #47
Bruno Desthuilliers
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
> 11:39, le message suivant :
>>
>> 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 !-)

>
> J'ai fini par me mettre un émulateur Win XP, mais je n'y ai que IE6
> Il ne semble rien replier avec bidule.onclick()


Effectivement, après "réduction" du code a minima, je n'arrive pas Ã
reproduire le problème. Je subodore une interaction vaseuse avec d'autre
code dans la page d'origine. Je n'ai pas le temps d'exploer plus pour le
moment, mais j'y reviendrai à l'occasion. A suivre...


> Il m'est impossible chez M$ de télécharger IE7 depuis mon Mac


Ah bin oui, forcément.

> (sont vraiment c....t chez M$ !)


Non ??? Pas vrai ???

  Réponse avec citation
Vieux 06/09/2007, 14h06   #48
Bruno Desthuilliers
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

ASM a écrit :
> En réponse à Bruno Desthuilliers qui écrivit, en date du : 4/09/07
> 11:39, le message suivant :
>>
>> 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 !-)

>
> J'ai fini par me mettre un émulateur Win XP, mais je n'y ai que IE6
> Il ne semble rien replier avec bidule.onclick()


Effectivement, après "réduction" du code a minima, je n'arrive pas Ã
reproduire le problème. Je subodore une interaction vaseuse avec d'autre
code dans la page d'origine. Je n'ai pas le temps d'exploer plus pour le
moment, mais j'y reviendrai à l'occasion. A suivre...


> Il m'est impossible chez M$ de télécharger IE7 depuis mon Mac


Ah bin oui, forcément.

> (sont vraiment c....t chez M$ !)


Non ??? Pas vrai ???

  Réponse avec citation
Vieux 06/09/2007, 21h08   #49
YD
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Laurent vilday a écrit :
> <div id="lolo"></div> [...]


Quelques modifications dans l'exemple proposé, ajouter un
attribut onclick à chaque élément, donne des infos
intéressantes. Le comportement de Fx est conforme aux specs :
visiblement le click est ajouté à tous les INPUT mais
désactivés sur text, etc. Ce qui est conforme à la
référence DOM 2 ou la méthode void click(); figure dans la
définition de l'interface HTMLInputElement (Appendix B:
IDL Definitions) -- pas de distinction selon l'attribut
type.

--- Exemple modifié ---

<p><div id="lolo" onclick="test(this);">DIV Object</div>
<form>
<p><input type="text" value="input type=text" onclick="test(this);">
<p><input type="button" value="Button" onclick="test(this);"></button>
</form>

<script type="text/javascript">
window.onload = function()
{
var E = document.getElementById('lolo');
alert('1) div: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};

E = document.forms[0].elements[0];
alert('2) input text: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};

E = document.forms[0].elements[1];
alert('3) input button: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};
};

function test(o){
o.style.color="#994477";
}
</script>

> La RFC stipule, je cite : - Method click: Simulate a mouse-click. For
> *INPUT* elements whose type attribute has one of the following values:
> "button", "checkbox", "radio", "reset", or "submit". -
>
> Donc IE a tort tout le temps, jusque là rien de bien étonnant.


Mais une implémentation peut aller au-delà des spécifications ! Bon, elle
doit supporter l'ensemble de la norme, ce qui n'est pas le cas d'IE, mais
rien n'empêche d'ajouter des comportements comme click là où ce n'est pas
explicitement prévu...

Ceci dit, le problème évoqué par Bruno Desthuilliers (sur la réduction
dans la barre des tâches) a certainement à voir avec l'utilisation de
l'évènement par son script -- récupéré avec e.target ou event.srcElement.
Quand il est déclenché par click ou onclick la cible n'est pas forcément
l'objet qu'on attendrait... et idem pour this.

--
Y.D.
  Réponse avec citation
Vieux 06/09/2007, 21h08   #50
YD
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [IE] Comment déclencher artificiellement la fonction affecté à onclick ?

Laurent vilday a écrit :
> <div id="lolo"></div> [...]


Quelques modifications dans l'exemple proposé, ajouter un
attribut onclick à chaque élément, donne des infos
intéressantes. Le comportement de Fx est conforme aux specs :
visiblement le click est ajouté à tous les INPUT mais
désactivés sur text, etc. Ce qui est conforme à la
référence DOM 2 ou la méthode void click(); figure dans la
définition de l'interface HTMLInputElement (Appendix B:
IDL Definitions) -- pas de distinction selon l'attribut
type.

--- Exemple modifié ---

<p><div id="lolo" onclick="test(this);">DIV Object</div>
<form>
<p><input type="text" value="input type=text" onclick="test(this);">
<p><input type="button" value="Button" onclick="test(this);"></button>
</form>

<script type="text/javascript">
window.onload = function()
{
var E = document.getElementById('lolo');
alert('1) div: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};

E = document.forms[0].elements[0];
alert('2) input text: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};

E = document.forms[0].elements[1];
alert('3) input button: ' + typeof E.onclick + '/' + typeof E.click);
try{E.click();} catch(e){};
};

function test(o){
o.style.color="#994477";
}
</script>

> La RFC stipule, je cite : - Method click: Simulat