私はかなりの間この問題に取り組んできました。IE7と8のHTML読み込みにスクリプトタグを動的に追加しました
基本的に私はページにHTMLを読み込んでいますが、読み込まれたHTMLにはその中の特定の位置に外部スクリプトが含まれている必要があります。
$('#blah').load('blah.htm',
function(){
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = "[external script url + query string here]";
$('#blah_blah')[0].appendChild(script);
});
編集:私は、次のコードを使用していたこれを行うための最善の方法を見つけた私は「のappendChild」の代わりを使用してい 理由はjQueryの「追加」$ .appendにより作成するVideoPlayerを追加するということですスクリプトは完全に間違った要素になります。 appendChildを使用すると、指定された正しい要素に追加されます。私はこの答えの中に概説され、これは多分、jQueryの挿入方法をどうすると思う: Can't append <script> element
私はFirefoxとChromeでの素晴らしい作品を使用していますが、IE7 & 8に、私はにできませんエラーメッセージ」を取得コードプロパティ 'appendChild'の値を取得:オブジェクトがnullまたは未定義です "、DOM内でscriptタグを見ることはできません。
私が含まれている場合はライン:
$("#blah_blah")[0].appendChild(document.createTextNode("test"));
テキストノード「テスト」がDOMに追加され、ページ上で見ることができます - それは「のappendChildは」仕事をしているようだが、そこにありますスクリプトタグを追加すると問題が発生します。
IE固有のセキュリティ問題である可能性がありますか?
スクリプトは、特定の位置にする必要がないのはなぜ? – FishBasketGordo
追加を試す http://stackoverflow.com/questions/610995/jquery-cant-append-script-element – Alfabravo
No repro。それは私のために働いています... http://jsfiddle.net/QKM2D/ –