不可否认,IE6是目前最SB的一款浏览器。
前段时间做一个功能:某个层的大小要随着浏览器窗口的变化而变化。代码很简单,很快写完了,如下所示
- <script type="text/javascript">
- function g_rsm(){
- var hs = YAHOO.util.Dom.getViewportHeight();
- var ws = YAHOO.util.Dom.getViewportWidth();
- YAHOO.util.Dom.setStyle("main_wrapper","width",(ws-112)+"px");
- YAHOO.util.Dom.setStyle("main_wrapper","height",(hs-82)+"px");
- }
- window.onresize = g_rsm;
- </script>
- </head>
- <body οnlοad="g_rsm()">
然后,Chrome、FF2-3、Safari都没有问题,但是在IE下,onresize事件会被无限次执行,直到死掉,够傻帽。
于是,只好换一种写法
- <script type="text/javascript">
- function g_rsm(){
- window.onresize = null;
- var hs = YAHOO.util.Dom.getViewportHeight();
- var ws = YAHOO.util.Dom.getViewportWidth();
- YAHOO.util.Dom.setStyle("main_wrapper","width",(ws-112)+"px");
- YAHOO.util.Dom.setStyle("main_wrapper","height",(hs-82)+"px");
- setTimeout(g_sss,500);
- }
- function g_sss()
- {
- window.onresize = g_rsm;
- }
- </script>
- </head>
- <body οnlοad="g_rsm()">
这下可以了。
总结一下:不多说了,IE,傻就一个字