首页 > JS > jQuery thickbox插件在IE6下滚动条消失的bug
2009
03-26

jQuery thickbox插件在IE6下滚动条消失的bug

愚人码头 JS 围观0 2 条评论 编辑日期: 字体:大 中 小

最近发现jQuery thickbox插件在IE6下滚动条消失的bug,

大家可以在这里用ie6试试:http://jquery.com/demo/thickbox/

就是在ie6下,弹出窗口的时候页面的滚动会消失,从而是页面向右抖动一下,关闭窗口时,滚动条出现,从而使页面又向左抖动,这造成了很不好的用户体验。

出现这个问题的主要原因是ie6对js的页面高度宽度解析的不同

可以参阅http://www.css88.com/article.asp?id=133

但是bug出现的前提是你的页面上引用的是xhtml 1.0的dtd,也就是“<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“>”

如果你引用的是html4.0的dtd那么就没有这个bug。

但是当前绝大多数的的页面都是引用xhtml 1.0的dtd,要避免这个bug这就需要改造thickbox插件,其实很简单,只要将没有压缩过的的thickbox.js打开,找到tb_show这个函数,

将下面两句注释掉就可以了,Thickbox 3.1中在整个文件的35和36行。

JavaScript代码
  1. $(“body”,“html”).css({height: “100%”, width: “100%”});   
  2. $(“html”).css(“overflow”,“hidden”);  
  • 本文固定链接: http://www.css88.com/archives/734
  • 转载请注明: 愚人码头 于 WEB前端开发 发表
最后编辑:
作者:愚人码头
这个作者貌似有点懒,什么都没有留下。
站内专栏 站点