肉松君

解决win10的ie11环境下,onblur或者onfocusout之后的alert弹出时,其他窗口会隐藏当前窗口的问题
工作中客户反应把系统换到win10的情况下,onblur时弹出窗口会使当前运行环境中的其他窗口弹到活动的窗口之前上...
扫描右侧二维码阅读全文
16
2018/09

解决win10的ie11环境下,onblur或者onfocusout之后的alert弹出时,其他窗口会隐藏当前窗口的问题

工作中客户反应把系统换到win10的情况下,onblur时弹出窗口会使当前运行环境中的其他窗口弹到活动的窗口之前

上网查了资料,这个是目前微软已知的bug,并在官网显示这个问题由于不影响安全性,没有修复的预定

参考url:Browser window loses focus after onfocusout or onblur alert in IE11 Windows 10.

于是我们采用jQuery的onfocusout方法,初步解决了问题,但是后来发现,当alert窗口弹出后,

如果此时切换一下其他窗口,再次切换回当前窗口,再弹出alert警示窗的时候,其他窗口仍然会弹出隐藏当前窗口

最终,解决方法如下:

给onblur方法写一个条件,代码如下

onblur="(this!=document.activeElement)&&setTimeout(function(){alert('Clicked')},0)"

这样即可解决目前既存的bug了。

转载请注明出处和链接,谢谢

Last modification:September 16th, 2018 at 12:38 pm
If you think my article is useful to you, please feel free to appreciate

One comment

  1. test

    alert("ok")

Leave a Comment