离开IE标签的事件是什么?

时间:2013-05-21 04:11:13

标签: javascript web-applications

我希望在以下情况下触发我的javascript:

  • 当多个IE标签打开时,当前的IE标签已切换
  • 当前IE标签已关闭
  • 我不希望我的JS代码被页内弹出对话框触发。
  • 当整个IE窗口关闭时。

失去焦点事件可能不适合我,因为我的页面中有弹出的diaglogs,因此当它弹出时,IE选项卡将失去焦点,但由于标签不是切换关闭,我不希望我的javascript被触发。

有什么解决方案吗?我想知道是否有 输入标签 / 离开标签 标签 - 切换 事件?

一些有趣的链接,但没有解决我的问题。

Is there a way to detect if a browser window is not currently active?

Hook into tab changed event of browser

3 个答案:

答案 0 :(得分:1)

如果您使用'jQuery',您可以轻松完成。

$(window).blur(function(){
  // your code 
});
$(window).focus(function(){
  // your code
});

这里是link,它提供了另外一种方法。

答案 1 :(得分:1)

您可能对

感兴趣
(function(){

    function doOnFocus(){ console.log("focus"); }
    function doOnBlur(){ console.log("blur"); }
    function doOnLeave(){ console.log("leave"); }

    if('onfocusout' in document){
        document.onfocusout = doOnBlur;
        document.onfocusin = doOnFocus;
    }else{
        window.onblur = doOnBlur;
        window.onfocus = doOnFocus;
    }
    window.onbeforeunload = doOnLeave;

})();

答案 2 :(得分:0)

在javascript中,窗口关闭时有一个事件,它不是IE特定的,但主要用于在用户离开页面之前调用警报。这是我的一个烦恼,非常讨厌,但可能正是你想要的。

window.onbeforeunload = yourfunctionthatexecutes;