Pourquoi le JavaScript suivant, lorsqu'il est exécuté dans Firefox 3.6.3, supprime tous les éléments FRAMESET
dans un document, mais le script similaire qui utilise à la place une expression XPath pour sélectionner les éléments FRAMESET
ne le fait pas? Est-ce que document.evaluate()
ne peut simplement pas correspondre aux éléments FRAMESET
? Y a-t-il une erreur dans l'expression XPath? Y a-t-il une autre erreur?Itérer sur des jeux de cadres avec l'expression XPath en JavaScript?
Sélectionner l'ensemble FRAMESET
éléments en utilisant la méthode document.getElementsByTagName()
(réussit):
var framesets = document.getElementsByTagName('frameset');
for (var i = 0; i < framesets.length; i++) {
framesets[i].parentNode.removeChild(framesets[i]);
}
Sélectionner l'ensemble FRAMESET
éléments en utilisant une expression XPath (échoue):
var framesets = document.evaluate("//frameset", document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
for (var i = 0; i < framesets.length; i++) {
framesets[i].parentNode.removeChild(framesets[i]);
}
Oui, vous avez raison. Étais sur le point de donner une réponse similaire, mais vous me battre à elle! –
Ce serait bien si vous copiez la réponse ici, 'parce que cette page n'existe plus. – Doug