次の JavaScript を Firefox 3.6.3 で実行するFRAMESET
と、ドキュメント内のすべての要素が削除されるのに、代わりに XPath 式を使用してFRAMESET
要素を選択する同様のスクリプトが削除されないのはなぜですか? 単に要素document.evaluate()
を一致させることができないのですか? FRAMESET
XPath 式にエラーはありますか? 他のエラーはありますか?
FRAMESET
メソッドを使用してすべての要素を選択しますdocument.getElementsByTagName()
(成功):
var framesets = document.getElementsByTagName('frameset');
for (var i = 0; i < framesets.length; i++) {
framesets[i].parentNode.removeChild(framesets[i]);
}
FRAMESET
XPath 式を使用してすべての要素を選択します (失敗):
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]);
}