【问题标题】:Detecting window onblur() event in Firefox, IE and Chrome?在 Firefox、IE 和 Chrome 中检测窗口 onblur() 事件?
【发布时间】:2019-09-23 15:32:27
【问题描述】:

我目前有以下代码:

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() 事件?

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

【问题讨论】:

  • jQuery 在为您解决这些兼容性问题方面非常出色,因此您可以专注于更大的图景。除非有一些非常令人信服的充分理由不这样做,否则您可能需要调查一下。

标签: javascript event-handling cross-browser dom-events


【解决方案1】:

正如 jmort253 所提到的,jQuery 在这方面确实很擅长,下面是几乎可以在所有当前浏览器中使用的代码:

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

【讨论】:

    猜你喜欢
    • 2010-12-25
    • 2012-05-02
    • 2016-04-23
    • 1970-01-01
    • 2012-04-08
    • 2022-12-24
    • 2011-02-27
    相关资源
    最近更新 更多