Voilà le contexteDe ce que j'ai compris des namspaces je m'attendais à
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?xml version="1.0" encoding="iso-8859-1"?> <xhtml xmlns="http://www.w3.org/1999/xhtml" xmlns:myNS="http://mydomain.org/NS" > <head> </head> <body> <span myNS:MyAttribute="aValue">contenu</span> <myNS:myTag>coucou</myNS:myTag> </body> </xhtml>
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'} HTMLHeadElement {namespaceUri:null} HTMLBodyElement {namespaceUri:null} HTMLSpanElement { namespaceUri:null, attributes:[ 0:{prefix:'myNS',name:'MyAttribute',value:'aValue',namespaceUri:'http://mydomain.org/NS'} ] } TextNode (contenu) Element {prefix:'myNS',nodeName:'myTag', namespaceUri:'http://mydomain.org/NS'} TextNode (coucou)
Soit donc un noeud span avec un attribut de nom "MyAttribute" de valeur "aValue" dans le namespace "http://mydomain.org/NS"
de même pour le tag "myTag" dans le namespace "http://mydomain.org/NS"
Or ce n'est pas du tout ce que j'obtiensj'ai l'attribut "myNS:MyAttribute" dans le namspace par défaut et le tag "myNS:myTag" lui aussi dans le namspace par défaut
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'} HTMLHeadElement {namespaceUri:null} HTMLBodyElement {namespaceUri:null} HTMLSpanElement { namespaceUri:null attributes:[ 0:{prefix:null,name:'myNS:MyAttribute',value:'aValue',namespaceUri:null} ] } TextNode (contenu) Element {prefix:null,nodeName:'myNS:myTag', namespaceUri:null} TextNode (coucou)
pourtant lorsque j'utilise javascript pour ajouter de attributs dans le namespace ça marche
j'ai bien
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part body.firstChild.setAttributeNS('http://mydomain.org/NS','other',12832);l'attribut other a bien été déclaré dans le namespace "http://mydomain.org/NS" alors que MyAttribute (qui était dans le code source) est vu dans le namspace par défaut mais avec un nom contenant le préfixe
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 documentElement {nodeName:'HTML', namespaceUri:'http://www.w3.org/1999/xhtml'} HTMLHeadElement {namespaceUri:null} HTMLBodyElement {namespaceUri:null} HTMLSpanElement { namespaceUri:null, attributes:[ 0:{prefix:null,name:'myNS:MyAttribute',value:'aValue',namespaceUri:null} 1:{prefix:null,name:'other',value:12832,namespaceUri:'http://mydomain.org/NS'} ] } TextNode (contenu) Element {prefix:null,nodeName:'myNS:myTag', namespaceUri:null} TextNode (coucou)
J'ai la même chose sous FF, Chorme, Omniweb
Merci de votre aide
A+JYT
Partager