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