传统的方式(被认为有点乱,不会与XHTML,作为XML的主机页面正常工作;如果通过异步页面加载后调用,将炸毁整个页面):
document.write('<iframe src="http://www.example.com/myframe" width="100" height="100"></iframe>');
与
innerHTML
与预定义的名字在页面上的元素
或者:
document.getElementById('examplecomframe').innerHTML= '<iframe src="http://www.example.com/myframe" width="100" height="100"></iframe>';
或者与DOM只是当前<script>
前插入(虽然再次推迟,如果这是不可预知的):
(function() {
var iframe= document.createElement('iframe');
iframe.src= 'http://www.example.com/myframe';
iframe.width=iframe.height= 100;
document.getElementById('examplecomframe').appendChild(iframe);
})();
或者只是当前脚本之前插入:
var scripts= document.getElementsByTagName('script');
var script= scripts[scripts.length-1];
script.parentNode.insertBefore(iframe, script);
我不会为第三方脚本包含使用jQuery。您必须将整个沉重的框架加载到封闭页面中,只是为了几行JS。这可能会导致主机页面使用其他框架(或不同版本的jQuery)发生冲突,这对第三方脚本来说非常粗鲁。
简直不敢相信。非常感谢! – Industrial 2010-11-12 14:18:28