第一次打开时,jquery colorbox看起来不对,之后就好了

我正在尝试动态(使用ajax)获取一些内容并使用它创建一个模态(使用colorbox插件)。 问题是内容中有一些图像。 我认为模态不计算它们的高度或宽度计算或其他东西。 因此,如果您关闭模态然后打开它看起来很好。 (第一次打开它时,它有滚动条来访问模态的其余部分)。

想法?

看起来你只需要添加图像的高度和宽度属性。 像这样:

 

同意@Matthew,但这就是原因:

您看到的行为的原因很简单:根据定义,当您第一次调用ColorBox时,Ajax获取的图像不在DOM中。 因此插件无法知道图像大小。

答案是有效的,因为它提供了这些信息。

您还可以使用任何插件的大小调整参数指定ColorBox打开的窗口大小,如果更适合您,可能会动态设置它们。

有关所有参数的列表,请参见http://colorpowered.com/colorbox 。

我这样解决了问题:

 jQuery('.colorbox').colorbox({ width:700, height:460 }); 

您可以在完成操作时调整框大小:

 jQuery('.colorbox').colorbox({ onComplete: function () { $(this).colorbox.resize(); } });