我尝试创建iframe,然后向其添加脚本,脚本将运行。 iframe已创建,但在将脚本附加到该iframe的过程中始终会出错。请帮忙。
<div align="center" id="adframe1">
<script type="text/javascript">
var response1 = '<script>var ad_unit="123";</scr'+'ipt><script src="http://abc.com/abc.js"></scr'+'ipt>';
$('<iframe id="adframe1mopub"/>').appendTo('#adframe1');
$('#adframe1mopub').ready(function() {
$('#adframe1mopub').contents().find('body').append(response1);
});
</script>
</div>
答案 0 :(得分:3)
您可以尝试以下脚本:
HTML:
<div id=container-iframe></div>
JS:
var response1 = '<script>var ad_unit="123";</scr' + 'ipt><script src="http://abc.com/abc.js"></scr' + 'ipt>';
$('<iframe></iframe>', { id: 'adframe1mopub' }).bind('load', function(event) {
if (!this.contentWindow) {
return;
}
this.contentWindow.document.body.innerHTML += response1;
}).appendTo('#container-iframe');
但这是实现这个目标的最佳方式:
$('<iframe></iframe>', { id: 'myiframe' }).bind('load', function(event) {
if (!this.contentWindow) {
return;
}
var scripWidthCode = document.createElement('script');
scripWidthCode.type ='text/javascript';
scripWidthCode.innerText = 'var ad_unit="123";';
this.contentWindow.document.getElementsByTagName('head')[0].appendChild(scripWidthCode);
var scripWidthSrc = document.createElement('script');
scripWidthSrc.type ='text/javascript';
scripWidthSrc.src = 'http://abc.com/abc.js';
this.contentWindow.document.getElementsByTagName('head')[0].appendChild(scripWidthSrc);
}).appendTo('#container-iframe');