Javascript 在页面刷新和href单击时调用卸载之前

Javascript 在页面刷新和href单击时调用卸载之前,javascript,jquery,html,Javascript,Jquery,Html,我正在使用以下功能检测浏览器关闭,或有人键入其他网站名称等 $(window).bind("beforeunload", function(){ return confirm("Do you really want to close?"); }); 但是上面的代码被调用用于页面刷新、href单击、表单提交等 在这些场景中,retrict如何不运行上述代码,或者我是否缺少其他方法 在卸载当前页面之前调用ForeUnload之前,无论下一个目的地在哪里,任何其他页面,即使

我正在使用以下功能检测浏览器关闭,或有人键入其他网站名称等

$(window).bind("beforeunload", function(){
        return confirm("Do you really want to close?"); 
    });
但是上面的代码被调用用于页面刷新、href单击、表单提交等

在这些场景中,retrict如何不运行上述代码,或者我是否缺少其他方法


在卸载当前页面之前调用ForeUnload之前,无论下一个目的地在哪里,任何其他页面,即使是在您自己的站点上,甚至是重新加载当前URL,都将得到代码的任何帮助或指针。该功能背后的思想是能够询问用户此特定网页中未保存的数据,以便在任何可能导致数据丢失的情况即将发生时触发该功能

根据国家标准,这种方法没有标准。它由IE4实现,并被其他浏览器复制

我看不出有什么办法知道这个页面为什么要关闭。通常,使用这种方法的方式是,页面跟踪某种类型的changeflag,并且仅当用户有重要的、未保存的数据时才提示用户


以下是本次活动的活动数据。您必须设计一些测试,看看您是否能够可靠地(跨浏览器)判断是什么原因导致调用该页面,并在某些情况下避免提示。

在卸载当前页面之前调用ForeUnload,无论下一个目的地在何处-任何其他页面,即使在您自己的站点上,甚至是重新加载当前URL。该功能背后的思想是能够询问用户此特定网页中未保存的数据,以便在任何可能导致数据丢失的情况即将发生时触发该功能

根据国家标准,这种方法没有标准。它由IE4实现,并被其他浏览器复制

我看不出有什么办法知道这个页面为什么要关闭。通常,使用这种方法的方式是,页面跟踪某种类型的changeflag,并且仅当用户有重要的、未保存的数据时才提示用户


以下是本次活动的活动数据。你必须设计一些测试,看看你是否能可靠地判断(跨浏览器)在某些情况下,是什么原因导致此消息被调用并避免您的提示。

您希望在哪些特定情况下运行提示?我希望当有人关闭浏览器或在地址栏中键入内容时,转到其他网站。我看不到任何可靠的方法来说明关闭页面的原因。有一些黑客(你可以通过谷歌找到)试图根据鼠标位置或窗口大小检测窗口关闭,但它们看起来非常特定于浏览器。您可以监控页面中的所有点击,以了解在卸载之前页面中的点击何时发生,甚至监控页面中的链接是否刚刚被点击,但这就是我在这里所能想象的。是的,即使我查看了一些示例,我们也可以使用这两种方法中的任何一种,如果我们使用卸载之前的窗口,我们必须检查所有类型的HREF、页面刷新等,否则我们必须按照您所说的使用坐标。您希望在哪些特定场景中运行提示?我希望当有人关闭浏览器或在地址栏中键入内容时,转到其他网站。我看不到任何可靠的方法来说明关闭页面的原因。有一些黑客(你可以通过谷歌找到)试图根据鼠标位置或窗口大小检测窗口关闭,但它们看起来非常特定于浏览器。您可以监控页面中的所有点击,以了解在卸载之前页面中的点击何时发生,甚至监控页面中的链接是否刚刚被点击,但这就是我在这里所能想象的。是的,即使我查看了一些示例,我们也可以使用这两种方法中的任何一种,如果我们使用卸载之前的窗口,我们必须检查所有类型的HREF、页面刷新等,否则我们必须按照您所说的使用坐标。