2017-01-13 4 views
0

私はiframeの内部で呼び出されるjavascriptコードを持っています。私は、そのJavaScriptコードの中にタグを追加し、そのタグをiframeの親ボディに追加したいと考えています。これはスクリプトタグを追加してiframeの親身に追加するコードです。JavaScriptコード内にスクリプトタグを書き込む方法は?

setTimeout(function() { 
     var scriptTag = "<script>alert(1)<"; 
     scriptTag += "/script>"; 
     $("#iframe").contents().find("body").append(scriptTag); 
    }, 5000); 

コードは、スクリプトタグを追加することも、それはあなたが新しいscript要素を作成する場合は、より良い仕事と親にそれを追加する可能性のあるエラー

+1

を助けるかもしれないし、質問は何ですか? – Arkej

+0

コードは動作していません!!!!!!!!!スクリプトタグを追加したりエラーを表示したりすることはありません – Tina

+0

正確な要件は何ですか? – M14

答えて

0

を示し、どちらも機能していません。

は、詳細については、この記事を参照してください:document.createElement('script') vs <script src="">

これは、上記のリンクでは受け入れ答えからコピーされた例です。

var s = document.createElement('script'); 
s.src = "..."; 
document.getElementsByTagName("head")[0].appendChild(s); 

srcプロパティは、スクリプトを含むURLです。また、詳細については、この記事を参照してください

var scriptTag = document.createElement('script'); 
scriptTag.type = 'text/javascript'; 
var code = 'alert(1);'; 
try { 
    scriptTag.appendChild(document.createTextNode(code)); 
    $("#iframe").contents().find("body").appendChild(scriptTag); 
} catch (e) { 
    scriptTag.text = code; 
    $("#iframe").contents().find("body").appendChild(scriptTag); 
} 

:だからあなたの質問の例のコードは次のようになり Adding <script> element to the DOM and have the javascript run?

:から直接あなたが答えを必要とする文字列から要素へのスクリプトの内容を追加するには

document.head, document.body to attach scripts

0

scriptTagは文字列でHTML要素ではないため、文字列を追加するだけです。私は、タグを追加するとiframeの親の体にそれを追加する方法を考え出したのすべてのANSのためdocument.createElement

setTimeout(function() { 
var scriptTag = document.createElement('script'); 
    scriptTag.src = 'alert(1)' 
    $("#iframe").contents().find("body").append(scriptTag); 
}, 5000); 
0

おかげでみんなを使用する必要があります。

setTimeout(function() {      
       var imported = document.createElement('script'); 
       imported.src = 'src'; 
      parent.document.body.append(imported); 
     }, 5000); 
0

これは

setTimeout(function() { 
    var scriptTag = "<script>alert(1)</" + "script>"; 
    $("#iframe").contents().find("body").append(scriptTag); 
}, 5000); 
関連する問題