2

如果我保持整个页面可见(没有滚动条),ColorBox 会按预期运行。

当滚动条在右侧可见时,页面内容会发生变化,但颜色框不会。

尝试使用 html {overflow-y: scroll;} 解决此问题,但这似乎不起作用。页面内容已正确固定,但 ColorBox 不尊重滚动条宽度。

如果滚动条可见,并且在单击链接时页面向下滚动,则 ColorBox 在错误的位置初始化,从可见页面的顶部而不是实际页面顶部对齐。

编辑:

在第 492 行,有以下代码 // remove the modal so that it doesn't influence the document width/height $box.css({top: -9e4, left: -9e4});

我似乎模态 IS 影响文档的宽度/高度,因为注释掉第 503 行会产生所需的效果//top = scrollTop;。这告诉我模态框引起了问题。这仍然不能纠正水平对齐的行为,弹出窗口仍然从主体偏移,因为它没有考虑滚动条。

任何想法?

4

1 回答 1

0

这是 ColorBox 的默认行为。要处理它,您需要将 ColorBox 初始化更改为(摘自您的页面):

.colorbox({iframe:true, width:"800px", height:"600px", top:"137px", opacity:"0", scrolling:"false", position:fixed});

注意position:fixed属性 - 它强制浏览器根据top需要处理您的参数,即它将始终为 137 像素,而不是 137 像素 + 页面的滚动高度。

也请将此问题视为与您的问题相似。

于 2012-11-27T19:36:57.683 回答