Firefox和IE的显示策略区别 - 解决前面Firefox的bug Unknown 2009/08/18

| |

前面在《Firefox有bug啊!!!》中,我提到了我有一个困惑:为何我的程序在Firefox不正常?但在IE下正常?

大家会看到我的博客里是时不时加点google广告的吧?没办法,想赚点小钱维持家用~

我的策略是:如果有图片尺寸大于150*60,则不显示广告,否则就插入广告。这个程序看起来设计得很完美,在IE下非常正常。但后来,我意外地发现Firefox下有时会失效,但奇怪的是,Firefox并不报错。这是怎么回事呢?

这个问题,我纳闷了好久,一直没想出来怎么回事。

昨晚,我突然想明白了!我好象记得有篇文章上谈到IE和Firefox的显示策略区别:IE是先同时下载图片和网页,而Firefox则是先下载网页,再下载图片。这样,就造成了在Firefox下时,Javascript在判断是否存在图片尺寸大于150*60的失败,因为Javascript在执行时,有时候图片还根本没载入!!!

既然明白了是怎么回事,知道了root cause,就知道如何生成一个short-term solution了。我已经改过了,用setTimeout(fun,2000),指定在2秒后再进行判断。这样,似乎情况好一点。至于long-term solution,我觉得哪天有空要重新看一下,优化一下代码。

请给这篇日志评个分吧~!

本文评分: 4.2/10 (29 votes)    提示:您还未对本文评分,您可以进行评分并发表您的意见!

加入收藏!

发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [注册]