2011-01-06 6 views
0

iFrameをページに動的に追加し、iFrameの 'head'タグに 'script'タグを挿入しようとしています。私はiFrameの本体にonloadイベントを追加することでこれをやろうとしているので、追加しているjavascriptを読み込んでもページの速度が遅くならないようにしています。しかし、Chrome(またはiPhoneのSafariまたはAndroidエミュレータ)では動作しない(または実際にonloadイベントを追加する)ようです。iFrame本体にonloadイベントを追加しても動作しません。

私が正常にJavaScriptとiFrameのヘッドにスクリプトタグを追加しようとして以下のコードを使用してiFrameを作成しました:

var iframeTag = document.getElementById('myIframe'); 
doc = iframeTag.contentWindow.document.open(); 
doc.write("<body onload=\'var d=document;var h=d.getElementsByTagName(\'head\')[0];var sc=h.appendChild(d.createElement(\'script\'));sc.language=\'javascript\';sc.src=\'iframe.js\';\'"); 
doc.close(); 

答えて

0

あなたは、オンラインイベントがexcutedされていないので、それはだことを確認していますか?エスケープした見積もりが間違っていて、身分タグを閉じていません。それがうまくいくかどうか試してみてください。

doc.write("<body onload='alert(1234)'>"); 
0

代わり それは絶対に動作しますwindow.onloadを使用!

関連する問題