检测iframe何时关闭

问题描述:

我们正在使用Salesforce,并具有嵌入的iframe以显示来自我们开发的另一个应用程序的内容。当用户正在处理我们的iframe中的字段并失去焦点时,iframe脚本会将其输入保存回我们的系统。但是,可能会出现用户在我们的某个字段中输入数据的情况,但从未失去焦点,然后指示外部salesforce shell导航到其他页面。这导致我们的领域永远不会保存,因为它从未失去焦点。检测iframe何时关闭

因此,对于iframe,是否存在某种卸载事件,我们可以附加并检测是否需要在页面刷新其他salesforce视图之前保存该事件?

+0

当用户离开页面时,没有可靠的方法来检测。诸如window.onload之类的东西在某些浏览器中可用,但可能无法正确触发。 – 2013-02-19 18:08:45

+0

window.onbeforeunload事件是否触发? – epascarello 2013-02-19 18:21:16

您可以在自定义应用程序中使用以下代码。

window.onbeforeunload = function(event) { 
    event = event || window.event; 
    var confirmClose = 'Are you sure?'; 
    // For IE and Firefox prior to version 4 
    if (event) { 
     event.returnValue = confirmClose; 
    } 
    // For Safari 
    return confirmClose; 
}