0
$('<img />')
   .attr('src', val)
   .attr('width', "400")
   .load(function(){
      $('.showdata').append( $(this) );
   }
);

これは画像に対して完全に機能しますが、これはどのように 1:1 を iframe に変換しますか? ここでクイック jsfiddle: http://jsfiddle.net/ET8Gw/

4

4 に答える 4

3

Image オブジェクトとは異なり、IFrame は DOM の一部になるまで読み込まれません。

これを回避するには、要素を非表示にして DOM に追加し、load イベントが発生したときにそれを表示します。

var val = "http://dumb.com/";
 $('<iframe />')
            .hide()
            .attr('src', val)
            .attr('width', "500")
            .load(function(){
                $(this).show();
            })
            .appendTo(".showdata");

http://jsfiddle.net/ET8Gw/1/

于 2011-09-12T16:06:13.703 に答える
2
var val = "http://inapcache.boston.com/universal/site_graphics/blogs/bigpicture/texas_drought_fires/bp1.jpg";
$('<iframe/>')
    .attr('src', val)
    .attr('width', "500")
    .appendTo($('.showdata'));

http://jsfiddle.net/ET8Gw/5/

于 2011-09-12T16:08:09.483 に答える
1

次のようなことを試してください:

$("<iframe></iframe>")
    .css("display":"none")
    .attr('src', val)
    .load( 
        function(){
            $(this).show();
        })
    .appendTo(".showData");

クロスドメインでは機能しません。

于 2011-09-12T16:08:29.677 に答える
1

私はこれをやってうまくいきました

var val = "http://inapcache.boston.com/universal/site_graphics/blogs/bigpicture/texas_drought_fires/bp1.jpg";

$('.showdata').append('<iframe src="' + val + '" width="400" height="200"><\/iframe>');

jsFiddle: http://jsfiddle.net/ET8Gw/22/

于 2011-09-12T16:26:01.640 に答える