我确信我不能成为第一个遇到这个问题的人,但我没有找到解决方案的运气。
我以最简单的形式使用Shadowbox;只是做一个带有链接的图像弹出窗口
Click <a href="myimage.png" rel="shadowbox">here</a> to view the image.
这工作正常,但有一个非常奇怪的副作用:当我单击链接时,我页面上表单的所有选择输入(即下拉框)都消失了。稍微窥探一下 Firebug 就会发现 CSS 正在被修改以赋予<select>
标签属性visibility: hidden
。当图像被关闭时,输入会重新出现。
毫不奇怪,这在浏览器中始终如一地发生。
由于输入全部重新出现,我可能会保持原样。但是,如果(例如)无法加载图像,并且脚本无法显示它,则输入将保持不可见。此外,它看起来很奇怪,它让我发疯。:D
其他可能相关或不相关的因素:
- 过去我在 Shadowbox 上做得很少,很可能会遗漏一些令人尴尬的显而易见的东西。
- 我的页面及其表单是由 CakePHP 生成的。
- 该页面使用 jQuery,Shadowbox 使用的是 jQuery 适配器。
- 消失的输入没有属性
class
。它们确实具有id
由 CakePHP 生成的属性,但这些名称对我的应用程序来说是非常特定的,并且不太可能导致任何 CSS 冲突。 - 据我所知,所有选择输入都消失了,页面上的任何其他元素、输入或其他元素都没有受到影响。(甚至与输入相关的标签也不受影响。)
- 版本:Shadowbox 3.0.3、jQuery 1.4.2、CakePHP 1.3