2017-11-03 17 views
0

localStorageから値を取得してiframe URLに追加してから、そのページに書き込もうとしています。localStorageから値を取得し、iframe URLに追加する

私はdocument.writeでiframeをレンダリングしようとしていますが、正しく動作しているとは思いません。

は、ここで私がこれまで持っているものです。

<script> 
    jQuery(document).ready(function($) { 
     $(".postid-192").load(function() { 
      var email = localStorage.getItem("email"); 
      document.write('<iframe src="http://www2.site.com/l/123/2009-04-28/ABCDE?email=' + email + ' width="1" height="1"></iframe>'); 
     }); 
    }); 
</script> 

私は何をすべきかdocument.writeにちょっと混乱していると思いますか?私はちょっと、どこかでページに書いてしまう印象を受けました。しかし、私はこれについて間違っているかもしれません。全体として、私は価値(この場合は電子メール)を取得し、iframe URLに追加して、それをどこかのページに配置しようとしています。私はそれが理にかなったことを願う

+1

'のdocument.writeを()'は絶対に使用しないでください代替。代わりに 'document.body.appendChild()'を試してください。また、イベントハンドラとしての 'load()'は推奨されなくなりました。 –

答えて

1

write()メソッドは主にテストに使用されます.HTMLドキュメントが完全にロードされた後に使用される場合、既存のHTMLはすべて削除されます。

したがって、document.writeを使用しないでください。このコードは正しいです:

<script> 
$(document).ready(function() { 
    $(".postid-192").load(function() { 
     var email = localStorage.getItem("email"); 
     $("#iframe").html('<iframe src="http://www2.site.com/l/123/2009-04-28/ABCDE?email=' + email + '" width="1" height="1"></iframe>'); 
    }); 
}); 
</script> 

そしてHTML:

<div id="iframe"></div> 
+0

src属性の二重引用符も閉じていません。 – Trioj

+0

今よく見えます。 – Trioj

+0

@DavidMoškoř - これはsrcをiframeに追加する予定ですか?待って... NM ...私は今それを参照してください – ultraloveninja

1

のiframeを追加するための正しい方法:絶対にありませんがなければ

var i=document.createElement('iframe'); 
i.src= 'http://www2.site.com/l/123/2009-04-28/ABCDE?email=' + email; 
i.width=1; 
i.height=1; 
document.body.appendChild(i); 
関連する問題