我目前有以下代码:

if (document.onfocusin !== undefined) {
    var onfocusin = true;
}
else{
    var onfocusin = false;
}

if (onfocusin === true)
{
    document.onfocusout = ad_blur; //ad_blur is a function I defined
                                   //when window.onblur() fires
}  else{
    window.onblur = ad_blur;

}


代码在IE 8和Chrome 17中运行良好,但在Firefox 8中却无法运行,我还发现了其他一些代码,但是兼容性无法满足我的需求。所以问题是:有没有办法确定IE,Firefox和Chrome中的window.onblur()事件?

更具体地说,我想在打开新窗口(或选项卡)时处理该事件。

最佳答案

就像jmort253提到的那样,jQuery非常擅长于此,下面的代码几乎可以在当前的所有浏览器中使用:

$(document).ready(function() {
    $(window).blur(function() {
        ad_blur();  //here is what you wanna do when blur fires
    });
});

关于javascript - 在Firefox,IE和Chrome中检测到窗口onblur()事件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10629169/

10-11 13:39