0

嗨,

我正在尝试使用 colorbox,到目前为止效果很好(在 Chrome 和 Firefox 中),但在 Internet Explorer 中不起作用(我有版本 9 [在 Win7 64 位上)并尝试在开发者工具窗口中设置任何版本,但没有一个有效)。

我已经尝试了很多我发现的建议(文档类型更改/修复,console.__ 未定义,...)没有任何效果。

我没有得到异常的日志输出,我已经尝试了我的选择器,我用它通过开发人员工具控制台应用 colorbox(),它得到了正确的元素。该代码也被调用(通过日志输出验证)。

我注意到的一件有点奇怪的事情是,在 Chrome 中,颜色框在页面末尾生成了这个 DOM 条目:

<div id="colorbox" class="" style="display: none; padding-bottom: 42px; padding-right: 42px; ">

而 IE 得到这个:

<div id="colorbox" class="" style="display: none;" >

但我不知道为什么。

我尝试禁用我拥有的任何其他 css,但没有任何效果。

4

1 回答 1

0

我终于知道它是什么了......我的页面应该是 HTML5 并且我使用 Modernizr(检查/修复一些与 HTML5 相关的东西的 JavaScript 库)我基本上只使用它来通过媒体查询检查用户是否有一个小型设备(平板电脑/手机)或台式机。

这个问题在某种程度上与媒体查询有关。仅仅嵌入modernizr 库并没有什么坏处(没有任何调用)。但是,一旦我通过modernizr 执行媒体查询,colorbox 就不再起作用了!

为了测试它,我删除了对modernizr库和库的所有调用-> Colorbox就像一个魅力!

我现在下载了一个稍微新版本的modernizr(我有2.5.__并更新到2.6.1),现在即使使用Modernizr,Colorbox也可以工作!

这个问题只影响了 Internet Explorer,所以我猜它是/曾经是旧 Modernizr 版本中的一个错误,它只出现在 IE 中。

这花了我几个小时......所以我想我的教训是:永远不要使用任何你并不真正需要的 JS 库。

于 2012-09-09T16:07:35.613 回答