拿什么拯救你,我的ie


网站: JavaEye 作者: chen4w 发表时间: 2007-09-07 12:43 此文章来自于 http://www.iteye.com
声明:本文系JavaEye网站原创文章,未经JavaEye网站或者作者本人书面许可,任何其他网站严禁擅自发表本文,否则必将追究法律责任!
原文链接: http://www.iteye.com/topic/121321

我想在写这篇文章之前,已经有无数的难友被IE折磨得痛苦不堪了.

下面就将我自己用IE的问题作个小结:

1.div 无法覆盖select 表单的问题

  痛苦指数 

  解决办法:

  各路大仙真是仁者见仁,智者见智,归纳起来主要有两种

  a. 隐藏法

       计算select附近的div,如果发现div重叠,就赶紧隐藏select,典型代表 :www.dynarch.com/projects/calendar/

  b.替换法

       干脆用div + table 重写个select得了

       Ext做得不错,提供了对select的refresh方法 www.extjs.com



2.缺少有效的脚本调试支持

    痛苦指数 

    对于B/S的 B端开发人员来说,脚本调试器简直就是小李手的小刀.

    相对于firefox下的firebugaddons.mozilla.org/firefox/addon/1843

     IE的解决办法就是安装庞大的 InterDev , 或者目前的.net  frame,就算是这样的庞然大物,

   程序无响应也是经常的事情.

   解决办法:

    偶的解决办法,就是写跨浏览器的脚本,在ff下调试完了再往IE下移。

    如果只在IE下出问题咋办? ———alert!!!!!



3.低性能

   痛苦指数 

    如果你用过这个www.scbr.com/docs/products/dhtmlxTree/index.shtml

   如果你的书有上千个节点, 一定就会有所体会了,

   在同一个页面里将几个图片重复利用几千次?

   对不起,在IE中你不得不等待"xxxx"个图片正在下载。

  我就弄不懂,同一个页面里的对同一个img的url引用,有必要每次都去检查更新么??

  解决办法:

   把访问策略设置为“自动”吧,第一次的慢嘛只好忍受了。

   提及低性能,有个有趣的实验一定要做——将几千行的纯文本粘贴到 IE 的textarea中试试看,

  一定会给你一个惊喜。



4.自作主张

  痛苦指数 

 如果你调用getElementById,而ie未发现此id,那么它就会去找name为此id的元素并返回给你,不报任何错误。

 解决办法:

 写程序小心再小心



5.内存泄漏

  痛苦指数 

  在页面中通过js反复创建和删去Div,ie6会出现内存泄漏,甚至重启ie仍然无济于事。

  这个真是RIA的噩梦啊!!

  RIA常用的手段就是利用div模拟窗口,因此div的创建和释放是最基本的操作。

 解决办法:

  参考Ext的destory机制

 我的办法就是div复用,建一个就不放,重复利用。就算这样,由于窗口内容的刷新同样需要动态建立和释放html元素,

 仍然存在内存泄漏。



6.兼容性差

  痛苦指数 

  这个问题是前一段在客户那里发现的,微软2003拼音输入法,与ie下textarea的刷新冲突。

 大家可以用下面这个最简单的页面看看效果

js 代码


 


  1. <html>  
  2.   
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
  5. <title>新建网页 1</title>  
  6. </head>  
  7.   
  8. <body bgcolor="#000000">  
  9.   
  10. <form method="POST" action="--WEBBOT-SELF--">  
  11.     <p><textarea rows="16" name="S1" cols="51"></textarea><input type="submit" value="提交" name="B1"><input type="reset" value="重置" name="B2"></p>  
  12. </form>  
  13.   
  14. </body>  
  15.   
  16. </html>  




 当使用微软拼音2003的逐词提示,ie无法正确判断出刷新区域,干脆就将整个页面从背景到各层div逐个刷新的一遍。

导致屏幕狂闪。

 让人哭笑不得的是,在firefox下居然一切正常。



总结到此,欢迎大家补充!

当然以上问题出现在目前应用较广的ie6上,ie7已经解决了大多数问题。

但试想如果没有那只火狐狸捣乱,我们能指望用上ie7么?

反过来也是一样,如果当年netscape一枝独秀,情况怕也好不到哪里去。

所幸世界正在向着多元化的方向发展。

 




《 拿什么拯救你,我的ie 》 的评论也很精彩,欢迎您也添加评论。查看详细 >>

推荐相关文章:
   [转载]13个在线web2.0风格生成器
   关于页面的遮罩效果,有什么好的解决方法没有?




JavaEye推荐
上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师
免费下载IBM社区版软件--它基于开放的标准,支持广泛的开发类型,让您的开发高效自主!
京沪穗蓉四地免费注册,SOA技术高手汇聚交锋.
上海:优秀公司德比:高薪诚聘 资深Java工程师
广州:优易公司:诚聘Java工程师,开发经理
上海:尤恩斯国际集团:诚聘开发工程师
北京:优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目:使用 JavaScript 编写的杀死幽灵游戏(附源代码) 杀死鬼魂游戏是使用 Vanilla JavaScript、CSS 和 HTML 画布开发的简单项目。这款游戏很有趣。玩家必须触摸/杀死游荡的鬼魂才能得分。您必须将鼠标悬停在鬼魂上 - 尽量得分。鬼魂在眨眼间不断从一个地方移动到另一个地方。您必须在 1 分钟内尽可能多地杀死鬼魂。 游戏制作 这个游戏项目只是用 HTML 画布、CSS 和 JavaScript 编写的。说到这个游戏的特点,用户必须触摸/杀死游荡的幽灵才能得分。游戏会根据你杀死的幽灵数量来记录你的总分。你必须将鼠标悬停在幽灵上——尽量得分。你必须在 1 分钟内尽可能多地杀死幽灵。游戏还会显示最高排名分数,如果你成功击败它,该分数会在游戏结束屏幕上更新。 该游戏包含大量的 javascript 以确保游戏正常运行。 如何运行该项目? 要运行此游戏,您不需要任何类型的本地服务器,但需要浏览器。我们建议您使用现代浏览器,如 Google Chrome 和 Mozilla Firefox。要玩游戏,首先,单击 index.html 文件在浏览器中打开游戏。 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值