通过JAVASCRIPT添加iframe

时间:2013-04-18 07:40:02

标签: javascript iframe

我正在尝试通过Javascript添加iframe的javascript。它会在标记之前创建iframe。

你可以看到jsfiddle demo. 但我不想添加标签。我只想添加外部.js文件,它可以自行完成所有事情!

3 个答案:

答案 0 :(得分:2)

使用此

var newElem = createElement('script');
newElem.setAttribute('src',      'http://example.com/js/script.js');
newElem.setAttribute('type',     'text/javascript');
newElem.setAttribute('language', 'JavaScript');
document.getElementById('IdFromTheHeadElem').appendChild(newElem);

答案 1 :(得分:0)

您可以使用

创建标记

document.write("<iframe..............>");

编辑: 我在jQuery的评论中写的解决方案:

在你的JS文件中:

$(function(){
    $('#container').html('<iframe........');
});

在您的HTML中:

<div id="#container"></div>

将其包含在标题中:

<script src=".............yourscriptname.js"></script>

答案 2 :(得分:0)

从你的jsfiddle看起来你应该这样做(在简单的JS中)以避免直接在HTML代码中定义iframe:

var iframe = document.createElement('iframe');
iframe.id = 'iframeID';
document.body.appendChild(iframe);
// the rest is manipulating this iframe
iframe.contentDocument.write("<html><head></head><body><div id='foo'>The div</div></body></html>");
iframe.contentDocument.getElementById('foo').innerHTML = "Greetings from outside!";

code on jsfiddle(我将代码包装在一个闭包中以防止污染全局命名空间)

document.body.appendChild(iframe);应更改为其他内容,具体取决于您要将其放置在页面内的位置(例如document.getElementById('some-div-id').appendChild(iframe);