Colorbox不调整到正确的高度

问题描述:

我想加载内联的HTML到一个工作正常的colorbox,除了colorbox没有调整到正确的高度。Colorbox不调整到正确的高度

内联HTML内容非常长(约15000像素),但只有900个像素正在加载。

所以我开始使用colorbox.resize()函数来解决这个问题e.g:

 $('.inline-html').colorbox({ 
      onComplete : function() { 
       $(this).colorbox.resize(); 
      }  
     }); 

但调整大小功能只能达到约11000像素(未要求的15000个像素)。但是,如果我刷新页面两次,它会加载完整的15,000像素。

任何人都可以请建议一个解决方案?

感谢

+0

尝试使用固定大小的颜色框,并给它这个CSS属性:'溢出:滚动”。 – 2014-10-28 15:05:39

+0

我使用浏览器滚动条(与colorbox滚动条相对),因此设置滚动:false;和$(this).colorbox.resize(); - 如果我使用了彩色滚动条,那么正确的高度就起作用了。但我的客户想使用浏览器滚动条 – yorkshiredev 2014-10-28 15:31:37

思路:

  1. 我见过当有未加载时的onComplete火灾颜色框图像这一点,所以颜色框大小调整为内容减去的高度图片。然后图像加载并创建一个滚动条。如果您可以为卸载的图像设置高度,则问题可能会消失,因为colorbox会立即知道它的大小。例如:

    <p>Really long content.</p> 
    <p>Really long content.</p> 
    <img src="image.jpg" height="300"> 
    <p>Really long content.</p> 
    

  1. 如果知道颜色框会1.5万个像素,可以设置颜色框是在CSS,这高大的?或运行$.colorbox.resize({height:"15,000"})

    1. 可能是最糟糕的选项,可以在超时后调整其大小,得到的图像的时间来加载。这是不可靠的,因为图像会在不同的时间加载不同的人,但如果问题是图像,这可能会帮助您排除故障。

      window.setTimeout($.colorbox.resize(), 500); 
      
    开始=“3”>
开始=>
+0

感谢您的建议。 1)我添加了图像高度,但仍遇到同样的问题。此外,大部分内容是图像(90%的图像,10%的文字)。 2)我在同一页面上有大约20多个colorbox,它们是动态加载的 - 所以不幸的是它们都是不同的高度。 3)...嗯,好像不太好,我使用的是ImagesLoaded Jquery库,但可能能够将它集成到某个地方。 – yorkshiredev 2014-10-28 21:42:57