Javascript 窗口关闭时是否会触发onblur事件

Javascript 窗口关闭时是否会触发onblur事件,javascript,jquery,Javascript,Jquery,我有一个文本框,我已经附加了一个模糊事件到它。当用户关注页面中的其他元素时,我使用它发送Ajax请求。当用户关闭浏览器或浏览器中的选项卡时,我希望启用模糊事件也会触发。我不想使用unload,因为它在某些浏览器中不起作用。窗口关闭时是否会触发on blur事件,或者是否有任何方法在窗口关闭时发送Ajax请求。onblur属性可用于设置窗口上的模糊处理程序,该处理程序在窗口失去焦点时触发。当用户更改窗口时,您可以使用类似这样的方法来获取模糊事件触发器 HTML 单击另一个窗口可触发此浏览器窗口的

我有一个文本框,我已经附加了一个模糊事件到它。当用户关注页面中的其他元素时,我使用它发送Ajax请求。当用户关闭浏览器或浏览器中的选项卡时,我希望启用模糊事件也会触发。我不想使用unload,因为它在某些浏览器中不起作用。窗口关闭时是否会触发on blur事件,或者是否有任何方法在窗口关闭时发送Ajax请求。

onblur属性可用于设置窗口上的模糊处理程序,该处理程序在窗口失去焦点时触发。当用户更改窗口时,您可以使用类似这样的方法来获取模糊事件触发器

HTML

单击另一个窗口可触发此浏览器窗口的模糊事件

JavaScript

 window.onblur = blurText;

 function blurText() {
     alert("blur event detected!");
     // remove the event to stop an infinite loop!
     window.onblur = '';
 }

不,只有
onunload
onbeforeuload
在窗口关闭时被触发,甚至不是在所有浏览器中都会触发。浏览会话的终止通常超出js的控制范围


注意:即使他们真的启动了,我认为运行时也不会有足够的时间或内存来生成和启动XHR对象…

假设您的on blur事件发生在元素的“target”类上

您还可以在beforeunload方法上附加事件

$(window).bind('beforeunload',function(){
$(".target").blur();
});
而且模糊事件不会在Internet Explorer中出现。因此,依赖于blur事件的事件委派的脚本将无法在浏览器之间一致地工作

请查收


No
onblur
在窗口关闭时不会被触发。即使它会被触发,每个浏览器处理卸载浏览器行为的方式也不会使任何解决方法与您无法拨打电话相关。这是一个竞争条件,浏览器将终止连接。它确实触发了一个请求,这个答案是错误的。