IE7的问题

时间:2010-08-10 13:53:09

标签: jquery css internet-explorer-7

我正在开发一个简单的jquery效果的网站,比如show,hide ......

http://emilione.altervista.org/works.html

此页面适用于IE8,FF3.6和Chrome 5,但IE7存在一些问题。

如何重现问题:

- 点击“x”拇指 - >显示了相对于拇指的内容 - 点击同一个拇指 - >内容消失
- 点击“y”拇指 - >内容“x”和“y”一起显示覆盖(“x”图像带有“x”文本,“y”图像带有“y”文本)

错误预览:yfrog.com/ngproblemaxj(使用http://)

如果不清楚,我想单独显示带有相应文字的1张图片。 在链接的屏幕截图中,您可以看到两个图像,一个在另一个之上!

使用IE8开发人员工具(IE7浏览器模式)css diplay属性似乎设置正确但我注意到html视图中存在“jQuery1281468352670”,“sizcache”和“sizset”属性。

我无法找到解决方案,我希望特别为“works.js”文件中的“预览()”功能提供帮助。

由于

(抱歉我的英语不好)

1 个答案:

答案 0 :(得分:2)

目前,您似乎设置了.desc

.desc {
    width: 50px;
    height: 30px;
}

但是,这还不足以包含内容,因此浏览器必须猜测。现代浏览器会正确猜测,IE7不会。请尝试以下方法:

.desc {
    width: 100%;
    height: auto; /* Or just leave the height out entirely */
}

就我的测试而言,这应解决您的IE7问题,并且对更现代的浏览器没有影响。

<强>更新

至于jQuery show / hide问题,我最好的猜测如下。这是猜测

我认为你应该尝试颠倒行

$("#works").hide();
$("div","#works").hide();

可能,在第二行,IE(对我而言为6,对你来说是7),查看div中的#works,以及#works 1}}已被隐藏,也将它们解释为隐藏,因此无需设置其显示值。然后,当您点击其他项目时,会再次显示#works,旧项目仍然可见。

这是纯粹的推测,因为我无法在更简单的情况下复制错误,但这是我最好的猜测。