Salut !
Petite question qui peut paraitre bête mais qui me prend la tête pour pas grand-chose.
D'après le W3C et la doc de Mozilla, les fonctions de types getElementsBy* sont censés renvoyer des NodeList.
Lorsque je test sur Firefox 3 (document.getElementsByTagName('*') instanceof NodeList), ça me renvoi faux. En revanche, j'ai découvert que document.getElementsByTagName('*') instanceof HTMLCollection renvoyait vrai, laissant entendre que ces listes héritent de l'objet HTMLCollection.
Hors, quand je modifie le prototype de HTMLCollection, les objets renvoyés par les fonctions n'héritent pas des modifications. Idem lorsque je modifie le prototype de NodeList. J'ai également essayé avec NamedNodeMap sans succès.
Les listes renvoyés par Chromium, en revanche, héritent bien des modifications du prototype de NodeList (j'ai pas essayé sous Opera).
La question est donc de savoir quel est l'objet dont je dois modifier le prototype pour étendre les objets renvoyés par les fonctions getElementsBy* sous Firefox ?
Merci ^^
Petite question qui peut paraitre bête mais qui me prend la tête pour pas grand-chose.
D'après le W3C et la doc de Mozilla, les fonctions de types getElementsBy* sont censés renvoyer des NodeList.
Lorsque je test sur Firefox 3 (document.getElementsByTagName('*') instanceof NodeList), ça me renvoi faux. En revanche, j'ai découvert que document.getElementsByTagName('*') instanceof HTMLCollection renvoyait vrai, laissant entendre que ces listes héritent de l'objet HTMLCollection.
Hors, quand je modifie le prototype de HTMLCollection, les objets renvoyés par les fonctions n'héritent pas des modifications. Idem lorsque je modifie le prototype de NodeList. J'ai également essayé avec NamedNodeMap sans succès.
Les listes renvoyés par Chromium, en revanche, héritent bien des modifications du prototype de NodeList (j'ai pas essayé sous Opera).
La question est donc de savoir quel est l'objet dont je dois modifier le prototype pour étendre les objets renvoyés par les fonctions getElementsBy* sous Firefox ?
Merci ^^