Page 1 sur 1

pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 06 juin 2010, 16:24
par LaurentJ377
Salut,

Je ne comprends pas pourquoi, alors que Firefox est un des meilleurs navigateurs au monde, des choses comme outerHTML ou document.body ne fonctionnent pas alors que ça marche sous I.E, Safari.

D'avance merci pour ces éclaircissements.

Bien à vous

Laurent

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 06 juin 2010, 16:28
par LaurentJ377
Je viens de télécharger Opéra, ça fonctionne aussi.

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 06 juin 2010, 17:34
par calimo
Peut-être tout simplement parce que ce n'est pas standard ? :wink:

Enfin, ça fera visiblement partie du HTML 5, donc ça a des chances de venir d'ici quelques temps :)

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 06 juin 2010, 18:44
par LaurentJ377
Je ne sais pas trop où chercher pour vérifier si c'est standard ou pas. La seule chose que je sais c'est que normalement, le navigateur le plus fidèle aux règles du W3C c'est Opéra.

Je ne compte plus les heures que j'ai perdues à cause des différences entre les navigateurs. Aujourd'hui on a presque un standard unique mais c'est encore firefox et microsoft qui se démarquent. Sans doute pour profiter encore un peu de leur position dominante...

++

Laurent

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 09:51
par calimo
LaurentJ377 a écrit :Je ne sais pas trop où chercher pour vérifier si c'est standard ou pas.
Probablement dans le DOM : http://www.w3.org/DOM/
Mais ça ne sert à rien de chercher : il n'y est pas :wink:
Tu peux aussi jeter un œil dans l'ECMA Script (http://www.ecmascript.org/) mais ça définit le langage plus que les méthodes d'accès aux objets HTML.
LaurentJ377 a écrit :La seule chose que je sais c'est que normalement, le navigateur le plus fidèle aux règles du W3C c'est Opéra.
Bof, je ne m'avancerais pas sur ce sujet : chaque navigateur a ses petits écarts :wink:

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 10:10
par LaurentJ377
Pour le window.document.body, j'ai trouvé un contournement, j'utilise window.document.getElementsByTagNames('body')[0]
Pour le outer html, j'ai trouvé des scripts mais ça ne fonctionne pas pour le moment... :(

Je cherche...

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 12:54
par calimo
LaurentJ377 a écrit :Pour le outer html, j'ai trouvé des scripts mais ça ne fonctionne pas pour le moment... :(
Qu'est-ce qu'elle est censée faire exactement cette fonction ? Si tu veux de l'aide, il faut probablement commencer par dire ce que tu veux faire, plus que comment tu veux le faire :wink:

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 14:01
par LaurentJ377
Je travaille sur un CMS type joomla, dot net nuke. Le programme permet d'éditer le contenu de plusieurs divs dans la même page. Je dois donc dynamiquement "transporter" le contenu html du div dans un div supérieur qui se transforme en éditeur wysiwyg. Une fois l'édition terminée, je remplace le outer html de l'éditeur par l'ancien div et je remplace ensuite le innerHTML du div remis à sa place par le nouveau contenu en provenance de l'éditeur.

Mon système fonctionne sous IE, Safari, Chrome et opéra et ne fonctionne pas sous Firefox (que j'apprécie particulièrement à cette exception près).

++

Laurent

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 17:33
par calimo
Tu ne peux pas faire un parentNode.innerHTML pour le même résultat ?

Re: pourquoi n'y a-t-il pas de outerHTML dans firefox ?

Publié : 07 juin 2010, 17:56
par LaurentJ377
Ben le parent node peut contenir plusieurs nodes donc la totalité de l'inner html du parent node peut contenir d'autres éléments... pas si simple.

En plus il faut etendre la fonction pour assurer une compatibilité du code pour tous les navigateurs