JQuery插入脚本& HTML进入Iframe

时间:2014-04-18 05:13:58

标签: javascript jquery html iframe

我试图插入脚本& HTML转换为iframe。我的问题是我可以将HTML附加到iframe,但我无法附加它并保留Iframe的来源。

最终目标是将HTML加载到iframe源并具有叠加层。请指教。 我觉得我对这个有点偏僻。

$(function() {
            var $frame = $('<iframe class="viewTrackingFrame" id="viewframe" src="https://www.google.com" width="100%" height="100%" style="width:100%; height:100%;position:relative;">');
            $('body').html( $frame );
            setTimeout( function() {
                var doc = $frame[0].contentWindow.document;
                var $body = $('body',doc);
                $body.html('<h1>Test</h1>');
                $body.html('<div id="cursor" style="position:absolute;style:z-index:999999;"><img width="80" src="/assets/img/cursor_blue.png" /></div>');
                $body.html('<p id="test" style="z-index:9999999;">The queue length is: <span></span></p>');

            }, 1 );
        });

1 个答案:

答案 0 :(得分:0)

这是你能做的。 使用空src属性创建iframe。给它一些id。对所需的URL进行ajax调用以获取所有html并将其附加到iframe的正文。现在,添加您希望在同一iframe中添加的任何其他HTML。我已经在jsfiddle中测试了该方法,请查看http://jsfiddle.net/9vhL2/

$(function() {
    var $frame = $('<iframe class="viewTrackingFrame" id="viewframe" src="" width="100%" height="100%" style="width:100%; height:100%;position:relative;">');
            $('body').html( $frame );
                 var $body = $("#viewframe").contents().find('body');
            $.ajax( 
                {
                    url:"/echo/html/",
                    method:'POST',
                    success:function(data){
                      $body.append(data);
                      $body.append("<h1>Text added by script</h1>")
                      },
                    data: {html: "<p>Text echoed back to request</p><h2>Text from page</h2>"}
                });
});