SetAttribute onclick

Résolu
sapakus Messages postés 96 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 10 février 2011 - 26 mars 2008 à 19:50
sapakus Messages postés 96 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 10 février 2011 - 26 mars 2008 à 22:56
Bonjour,

pour assurer la compatibilité entre les différents navigateurs en ce qui concerne l'attribut onClick , j'utilise cette ligne de code :



(

navigator.userAgent.indexOf('MSIE')!= -1

)


?monObjet.onclick =function(){
maFonction(); 

}:monObjet.setAttribute('
onclick

','

javascript:maFonction


();');


Ici, je m'occupe de pallier au fait qu' IE ne comprend pas monObjet.setAttribute('onclick','javascript:maFonction();'); pour lui onclick n'est pas considéré comme un attribut d'une balise.Bref.

Même si ma ligne de code fonctionne, j'ai toujours lu qu'il était préférable de tester l'acceptation d'une syntaxe,propriété, méthode...etc, plutot que d'effectuer une détection de navigateur, ce qui garantit (soyons optimiste) une compatibilité bien plus large avec les navigateurs présents et futurs que l'on a pas pu tester.

Ne voyez-vous pas une bonne ruse de sioux pour tester l'acceptation ou pas de monObjet.setAttribute('onclick','javascript:maFonction();'); de manière concise, habile, élégante, svelte, envoutante et troublante à la fois ?

Merci de vos réponses






S
apakus

2 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
26 mars 2008 à 20:49
Bonjour,
<table bgcolor="#e6effe" border="0" cellpadding="5" cellspacing="0" width="100%">----, Ici, je m'occupe de pallier au fait qu' IE ne
comprend pas...pour lui onclick n'est pas considéré comme un attribut d'une
balise</td>
</td></tr></tbody></table>strictement
onclick est un attribute events...

pourquoi ne pas utiliser directement

monObjet.onclick=function(){
maFonction(); }
cela doit marcher sur tous les navigateurs me semble
t-il.
;O)
3
sapakus Messages postés 96 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 10 février 2011 3
26 mars 2008 à 22:56
Oui, en effet, je me suis compliqué la vie pour pas grand chose !

monObjet.onclick=maFonction;

ça marche très bien.

Merci pour ton aide.




S
apakus
0
Rejoignez-nous