我有一个主窗口和一些子窗口。我的子窗口是通过代码创建的。
var newWindow = window.open(url, windowName, windowFeatures);
另外我需要添加
newWindow.document.onfocusout = this.windowOnUnload;
给孩子的事件。我的问题是,当我需要对此页面执行POST操作时,我再次使用上述相同的代码重新创建此子窗口。但onfocusout事件没有触发。但第一次它会开火。另外我创建的子窗口始终具有相同的窗口名称。请帮我找一个解决方案。谢谢
答案 0 :(得分:1)
当您重新调用窗口时,是否意味着使用ajax调用更新其内容?或者你真的关闭它然后再次调用窗口。打开,最后连接onfocusout事件?
如果前者是这种情况,那么您将需要将事件重新连接到使用AJAX调用获得的新文档,因为整个文档已更改,并且先前文档对象的先前事件处理程序不再相关的。
更新:您可以发布您正在使用的所有相关代码吗?这就是我最好的帮助。
newWindow.document.onfocusout = this.windowOnUnload;
似乎不是您所需要的正确方法。我很惊讶它和你一起工作。请检查此问题:Is there a way to detect if a browser window is not currently active?