yui的alert在ie10下白屏的解决思路
最近接到一个jira:在ie10下,页面弹出提示框后,背景全部白屏了。 说实话,一看到这样特定浏览器下出现问题的jira我就很头疼,也很畏惧。最开始的思路就是F12 ,debug js代码,看执行哪个js语句后白屏了。但是ie10的debug还是相当不好用,用的非常不顺手。执行来执行去,还是没有找到好的解决方法,就这样拖了一天,实在是无思路,就问我leader了。 结果我leader一来,不是先调试js,而是直接对比 出现正常遮罩的页面 ie10的白屏页面。看看这两者的css有何不同,结果发现chrome下有个 opacity:0,但是ie10没有;而且ie10还多了个iframe,等等细节吧。接着就找那个 opacity,发现在一个js代码中有个判断:if(document.all){//代码1}else{//代码2} 是之前ie6789跟chrome ff的处理不同,所以针对ie浏览器做了特殊处理。但是现在ie10跟chrome的实现又相同了,进入特意为ie修的bug的方法又不正常了!晕死啊!这可真是实实在在的 找bug! 所以我修改一下判断,不用document.all判断,方法如下。不过还没复查,不知道有没有问题。 function getIEVersionGt10() { var userAgent = navigator.userAgent; //这里只是判断了ie10