我使用milkbox显示叠加窗口,叠加层基本上是iframe。
我有一些在iframe和body.unload事件中运行的js代码我希望在父文档中存储一些内容。
想象一下
-> overlay is open:
bla...
bla...
function store() { window.parent.document.store('myVar',var);}
document.body.onunload = store;
<- overlay got closed
onClose event gets triggered
var myVar = document.retrieve('myVar');
此时我应该从iframe存储var i。问题是只有IE不想检索这个。我试过window.parent.myVar = myVar,当onClose事件被触发时它无法识别......
我尝试将它存储在窗口中,没有...就像在iframe中发生的任何事情是分开的...这不是十字架!那么为什么会这样呢?
我尝试过chrome和firefox,两者都可以正常工作。只有疯狂的IE才不允许我存储检索内容。
请帮助!!
答案 0 :(得分:0)
如果他们来自同一个域,我们可以排除安全问题,这将起作用:
父和iframe都必须包含mooTools
父窗口
// Within your onClose handler:
var myVar = $(document).retrieve('myVar'));
alert(myVar);
I帧:
var store = function() {
$(window.parent.document).store('myVar','123');
}
window.addEvent("beforeunload", store);
在IE7中测试IE8 FF11有效!