document.getElementById ne veut pas fonctionner sous IE - HTML/CSS - Programmation
Marsh Posté le 15-01-2012 à 05:37:02
Si tu englobes ton texte avec <div> ça fait quoi ? Apparemment IE9 vérifie la validité de l'HTML inséré avec innerHTML. Ça n'explique pas qu'il ne soit pas défini, par contre. Et puis innerHTML est une propriété bien de chez eux à Microsoft, la moindre des choses serait qu'ils l'implémentent correctement.
Marsh Posté le 15-01-2012 à 09:12:42
Je comprends pas ce que tu veux dire par "englober mon texte avec <div>"
Finalement j'ai trouvé une solution de remplacement. J'ai mis un <input id="test"> et
document.getElementById("test" ).value = 'blabla';
Avec un peu de css ça ressemble à ce que je voulais, mais bon, c'est encore une fois du bricolage grâce à microsoft
Marsh Posté le 15-01-2012 à 15:39:59
Marche pas, avec ou sans body, en essayant tous les doctypes de l'univers, etc...
Marsh Posté le 15-01-2012 à 16:04:56
on peut voir le code de toute ta page, car j'ai un doute là
Marsh Posté le 15-01-2012 à 16:08:39
Aiexis a écrit : Je comprends pas ce que tu veux dire par "englober mon texte avec <div>" |
"<div>blabla</div>"
C'est ça que je voulais dire
Marsh Posté le 15-01-2012 à 16:11:19
Pc_eXPert a écrit : |
Toujours rien sur IE...
la preuve en image
http://www.pronotennis.org/test.php
A moins que ça soit mon IE qui soit buggué ?
Je me méfie de tout maintenant...
Marsh Posté le 15-01-2012 à 16:19:10
Le HTML est en mode quirks à cause du manque de DTD.
Je crois qu'en elevant l'attribut type ça doit passer.
Ca marche ça non :
Code :
|
Marsh Posté le 15-01-2012 à 16:26:07
raskt a écrit :
|
Ah oui, ça, ça marche...
alors que ça
Code :
|
ça marche pas
J'aime bien débugguer en faisant du ligne par ligne pour trouver là où ça coince (joke)
Marsh Posté le 15-01-2012 à 16:28:51
Si tu utilise un handler pour exécuter du code après que le DOM soit 'ready' (par exemple via jquery), ça devrait mieux marcher...
ça par exemple ca a l'air sympa: http://code.google.com/p/domready/
Marsh Posté le 15-01-2012 à 16:33:24
raskt a écrit : Si tu utilise un handler pour exécuter du code après que le DOM soit 'ready' (par exemple via jquery), ça devrait mieux marcher... |
Non je vais pas utiliser un AK47 pour écraser une mouche
effectivement il faut, à la fois que le div soit avant le script, ce qui est logique, et qu'il y ait les balises html et body.
Dans mes innombrables tests j'avais jamais dû réunir ces 2 conditions, ou alors il y avait un 3ème truc qui bloquait.
Merci bien en tout cas!
Marsh Posté le 15-01-2012 à 16:34:55
Pour l'archivage:
Code :
|
Marsh Posté le 15-01-2012 à 16:38:49
Et le lien de téléchargement de domready qui peut effectivement être utile:
http://domready.googlecode.com/files/domready.js
PS: par contre les div entourant "blabla" ne sont pas utiles.
Marsh Posté le 14-01-2012 à 22:59:06
Bonsoir,
je deviens FOU
Est-ce qu'une âme charitable pourrait m'expliquer pourquoi ce bout de code ne fonctionne pas sous IE ? (marche très bien sous chrome/firefox)
J'ai fait ça des millions de fois, ça a toujours fonctionné, j'ai des sites qui tournent avec ce genre de chose, aucun problème, mais ça, ça veut pas
J'obtiens cette erreur, sous IE 9
Impossible de définir la valeur de la propriété « innerHTML » : objet null ou non défini
Et ta mémé elle est pas définie ?
Bon sang je suis au bord de la crise de nerf là !
merci de me sauver la vie avant que je me jette
---------------
"L'espoir meurt en dernier", proverbe allemand