3

これを含む html という名前の文字列があるとします。

<script>
    document.write("Some random stuff here");
</script>

<script src="someremotejsfile"></script>

これをiframeウィンドウ内に動的に表示したい。

私の元の解決策は次のことでした:

document.open();
document.write(html);
document.close();

しかし、これはコンテンツがすでにロードされているにもかかわらず、スピナーが永久にロードされているかのように回転し続けるFirefoxで問題を引き起こします。私の次の試みは:

document.body.innerHTML = html;

これにより、スクリプトが本体に追加されますが、実際には実行されません。だから最後に私は試しました:

div = document.createElement("div");
div.innerHTML = html;
document.body.appendChild(div);

しかし、これも html 文字列内のスクリプトを実行していないようです。

私の質問は、html の文字列が与えられた場合、それをページに動的に追加するにはどうすればよいですか? たとえば、任意の数のスクリプトやその他の html 要素を含む広告タグにすることができます。そのhtml文字列に何が含まれているかを制御することはできません。私にとってはブラックボックスです。html の長い文字列を取得して、ウィンドウ (この場合は iframe) にロードできるようにする必要があります。

4

2 に答える 2