有些东西没有在第一次用户访问页面时加载,只在chrome上加载

时间:2012-11-25 14:02:07

标签: jquery html google-chrome loading

这很难解释,因为它真的很奇怪。但我会尽我所能。

我有一个滚动条,当内容溢出包装器时需要出现。简单。

但是,当用户第一次访问该页面时,脚本或我的html的一部分未加载。当他第二次访问该页面时,它可以工作。

要查看它,请点击“投资组合”: http://chuckbox.net/chromatemp/

- >第一次,你将看不到滚动条 - >再次点击,你现在就会看到它(从现在起你就会看到它)

我只有谷歌浏览器才有这个问题。 仅供参考,我使用jscrollpane作为滚动条,但我不认为问题存在。

1 个答案:

答案 0 :(得分:1)

访问该页面显示以下内容:

图片没有设置height属性,浏览器必须等待外部CSS或图像本身才能知道图像大小。

您有以下代码段:

  $(function(){
    $('#side-content').jScrollPane();
    $('#portfolio-content-wrapper').jScrollPane();
  });

在加载DOM时调用jScrollPane插件,但这可能在加载外部CSS之前发生。这意味着插件在被调用时无法访问其正确的长度,除非CSS(或所有图像)已经在浏览器缓存中(并且显然不会在以后读取)。

要解决此问题,

height属性包含在图片中:<img src=... height=240>

等待外部CSS加载:

  $(window).load(function(){
    $('#side-content').jScrollPane();
    $('#portfolio-content-wrapper').jScrollPane();
  });

或者,您可以在ready上初始化插件,然后在load上重复(如果插件允许的话)。