2012-02-26 372 views
0

http://net.tutsplus.com/tutorials/html-css-techniques/how-to-inject-custom-html-and-css-into-an-iframe将HTML,CSS和JavaScript代码注入到iframe中

它只允许您注入CSS和HTML。

如何将JavaScript注入iFrame?我试图改变:

styleTag = $('<style></style>').appendTo(contents.find('head')); 

styleTag = $('<script></script>').appendTo(contents.find('head')); 

,但没有奏效。你能帮忙吗?

演示环节是http://nettuts.s3.amazonaws.com/1089_iframe/iframe/iframe.html

回答

0

这很可能是代码就是工作。

不幸的是,你会发现在大多数浏览器中,它不会更新DOM来反映它。

如果您在标签上提供了src =,则可以通过大多数浏览器向其开发者提供的网络窗口确认它正在加载脚本。

但是,你不可能在DOM中看到它。

此外,您可以通过标准javascript创建标签并附加到事件以指示它已加载。使用标准的Javascript,这看起来像这样:

var head= document.getElementsByTagName('head')[0]; 
var script= document.createElement('script'); 
script.type= 'text/javascript'; 
script.onreadystatechange= function() { 
    if (this.readyState == 'complete') { 
     alert("loaded!"); 
    } 
} 
script.onload= helper; 
script.src= 'helper.js'; 
head.appendChild(script); 

我不确定如果有一个100%原生jQuery匹配的副本,

+0

实际上,当我在jsfiddle中将其更改为