これは私が試したことです:
function createDocumentz() {
var doc = document.implementation.createHTMLDocument('http://www.moviemeter.nl/film/270',null,'html');
return doc;
}
ドキュメントが作成されても、Firebugでこれを実行すると、本体ノードに子ノードがないと表示されます。理由は何ですか。
これは私が試したことです:
function createDocumentz() {
var doc = document.implementation.createHTMLDocument('http://www.moviemeter.nl/film/270',null,'html');
return doc;
}
ドキュメントが作成されても、Firebugでこれを実行すると、本体ノードに子ノードがないと表示されます。理由は何ですか。
いいえ、この方法では別のWebサイトからコンテンツを取得することはできません。
もしそうなら、それはクロスサイトスクリプティングにつながるでしょう。
ブラウザのポリシーにより、取得するのは空のドキュメントだけです。もちろん、本文は空です。
Iframeを使用して、ソースを同じに設定できます...
createHTMLDocument()
最初のパラメータとして渡したURLからHTMLファイルをダウンロードして解析するために使用できると想定しているようです。そうではなく、createHTMLDocument()
常に空のドキュメントを作成します。
また、関数に渡したパラメーターは。のパラメーターですcreateDocument()
。createHTMLDocument()
ドキュメントタイトルという1つのパラメータのみを取ります。ただし、を使用する場合でも、最初のパラメータは名前空間createDocument()
のURIであり、ソースドキュメントではありません。
残念ながら、JavaScriptだけを使用して外部WebサイトのHTMLをダウンロードして操作する方法はありません。最も近いのは、ドキュメントをiframeに表示することです。