如何使用Javascript将html从内存动态加载到FireFox中的iframe中?

如何使用Javascript将html从内存动态加载到FireFox中的iframe中?,javascript,iframe,Javascript,Iframe,在chrome中,如果我将HTML作为名为HTML的变量中的字符串,我可以轻松地将其加载到iframe中,并让iframe执行该HTML页面(使用它可能包含的css/jss/etc),方法如下: window.sHTML = html; iframe.src = javascript:parent.sHTML 在Firefox中,这根本不起作用。有没有一种方法可以在firefox中使用?注意,我需要JS在iframe中正确执行。例如,这种小提琴做了我想要的事情,但是如果html中有一个脚本标记

在chrome中,如果我将HTML作为名为HTML的变量中的字符串,我可以轻松地将其加载到iframe中,并让iframe执行该HTML页面(使用它可能包含的css/jss/etc),方法如下:

window.sHTML = html;
iframe.src = javascript:parent.sHTML
在Firefox中,这根本不起作用。有没有一种方法可以在firefox中使用?注意,我需要JS在iframe中正确执行。例如,这种小提琴做了我想要的事情,但是如果html中有一个脚本标记,那么它会破坏一些东西


更新:这在firefox中确实有效,它只是与破坏我代码的window.location进行了不同的交互。

回答我自己的问题:

window.sHTML = html;
iframe.src = javascript:parent.sHTML
这在firefox中确实有效,它只是与破坏我代码的window.location进行了不同的交互

更详细地说,如果您需要,请使用chrome

iframe.src = www.foo.com/bar.html
window.sHTML = html;
iframe.src = javascript:parent.sHTML
然后,iframe将执行html字符串中的html,但其window.location将保持为www.foo.com/bar.html,相关链接将被视为iframe来自www.foo.com/bar.html


但是在FF中window.location变成了javascript:parent.sHTML和相关链接将不再按预期的方式工作。

看到了吗?我想是的,如果我使用x='alert(“foo”);,JSFIDLE似乎会崩溃我想确保您正在使用的方法能够正常工作。为什么不使用
$(“#I”).attr('src',“javascript:alert('foo');”)?现在解决了吗?您应该将您的解决方案作为答案发布