Javascript JS BeforeUnload事件不';我有时不会开枪

Javascript JS BeforeUnload事件不';我有时不会开枪,javascript,dom-events,onbeforeunload,Javascript,Dom Events,Onbeforeunload,当用户关闭浏览器或导航到其他页面时,我需要将异步Http Post发送到外部URL 所以,我附加了一个JS处理程序来处理BeforeUnload事件 有时会被触发,有时不会。我在查chrome。每当我试图通过inspector调试脚本时,它总是可以正常工作 我必须只使用JavaScript(没有jQuery等外部库)在beforeunload或unload事件中不能使用异步操作。为了让脚本正常工作,必须使其同步。通过将async:false属性添加到ajax函数中(如果使用不同的方法,也可以使用

当用户关闭浏览器或导航到其他页面时,我需要将异步Http Post发送到外部URL

所以,我附加了一个JS处理程序来处理BeforeUnload事件

有时会被触发,有时不会。我在查chrome。每当我试图通过inspector调试脚本时,它总是可以正常工作


我必须只使用JavaScript(没有jQuery等外部库)

在beforeunload或unload事件中不能使用异步操作。为了让脚本正常工作,必须使其同步。通过将async:false属性添加到ajax函数中(如果使用不同的方法,也可以使用类似的属性),这将非常容易。这可能是因为您在调试时推迟了对窗口的处理,所以它可以正常工作。我也读过,为了调用函数,你需要在事件结束时返回一些东西。通常,如果返回字符串,文本将显示在弹出窗口中。我想你可以在这里找到更多有用的信息:

只有当用户与网站发生任何交互时,才会触发它。如果没有任何交互事件(例如单击,而不是悬停),
onbeforeunload
将不会被触发