我正在尝试获取通过 Javascript 添加 iframe 的 javascript。它在标签之前创建 iframe。
你可以看到jsfiddle 演示。 但我不想添加标签。我只想添加外部 .js 文件,它可以自己做所有事情!
我正在尝试获取通过 Javascript 添加 iframe 的 javascript。它在标签之前创建 iframe。
你可以看到jsfiddle 演示。 但我不想添加标签。我只想添加外部 .js 文件,它可以自己做所有事情!
用这个
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);
您可以使用创建标签
document.write("<iframe..............>");
编辑:我在 jQuery 的评论中写的解决方案:
在您的 JS 文件中:
$(function(){
$('#container').html('<iframe........');
});
在您的 HTML 中:
<div id="#container"></div>
将其包含在您的标题中:
<script src=".............yourscriptname.js"></script>
从您的 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!";
jsfiddle 上的代码(我将代码包装在一个闭包中以防止污染全局命名空间)
document.body.appendChild(iframe);
应该更改为其他内容,具体取决于您要将其放置在页面内的位置(例如document.getElementById('some-div-id').appendChild(iframe);
)