我遇到了smoothdivscroll插件的间歇性问题。我注意到,当我加载页面时,偶尔会出现第一张图像,它只会静止不动。有时(在几次刷新之后)所有图像都会加载并开始滚动。我检查了ajaxContent.php的响应,片段响应似乎是正确的。
我目前正在使用以下示例代码:
$("#div").smoothDivScroll({
autoScrollingMode: "always",
autoScrollingDirection: "endlessloopleft",
autoScrollingStep: 1,
autoScrollingInterval: 15,
ajaxContentURL: "ajaxContent.php"
});
ajaxContent.php是做什么的,它返回带有图像源的div的页面片段,类似于http://www.smoothdivscroll.com/lab.html的示例,其中打开了“替换内容与演示html内容”。图像src实际上是外部站点上图像的完整路径,类似于
<img src="http://example.com/image.jpg">.
返回的片段示例:
<div class="contentBox">
<img src="http://example.com/image.jpg">
</div>
<div class="contentBox">
<img src="http://example2.com/image2.jpg">
</div>
我还尝试了一个似乎运行良好的演示示例,可以减慢从外部网站加载图像导致插件无法正常工作?
答案 0 :(得分:0)
是的,它可能是由于图像加载速度缓慢和/或div的CSS与“contentBox”类的一些问题造成的,这使得插件很难计算出所有元素的总宽度可滚动区域。
当Smooth Div Scroll启动时,它会检查是否指定了ajaxContentURL。如果是这样,它会从该URL加载HTML内容,并在重新计算可滚动区域的宽度后直接加载。当它重新计算可滚动区域的宽度时,它会查看直接子元素的宽度,在您的情况下,div为“contentBox”类。如果这些div没有在CSS 和中指定的固定宽度,则部分/全部图像尚未完全加载Smooth Div Scroll将计算所有元素的总宽度错误。
如果所有图像宽度相同,您可以尝试为“contentBox”-divs设置固定宽度。您可以尝试的另一件事是临时剥离包装器div并使用图像标签加载HTML。