请访问此链接。
当我在 chrome 或 firefox 上打开它并多次刷新时,我得到以下屏幕:
我真的不明白为什么会出现这个问题。此外,两种浏览器上的萤火虫都没有错误:Chrome 和 Firefox。有什么建议么?
尝试给出#front-slides
一个高度(在这种情况下为 370px)并将其设置为overflow: hidden;
,然后删除.slides_container
.
这似乎解决了我的问题,问题似乎是.slides_control
高度设置错误,显然它在加载之前设置为图像高度。
您的其他解决方案是手动将.slides_control
' 高度设置为 370px 或更改计算直到页面加载完毕。
具有“slides_control”类的 dom 元素的高度正在动态设置。
有时是 18px ,但在其他情况下是 370px 。
如果您将高度明确设置为 370 像素,它可以工作,但您可能需要进一步研究它为什么在您的代码中设置不同的值。
问题是,您的功能(与滑块相关)在所有图像加载之前触发。移动,window.onload
如下所示
window.onload = function () {
//##########################################
// Front slides
//##########################################
$('#front-slides').slides({
preload: true,
preloadImage: 'design/img/elems/loading.gif',
generateNextPrev: false,
play: 5000,
pause: 2500,
hoverPause: true,
animationStart: function(current){
$("#headline h6").fadeOut("slow");
},
animationComplete: function(current){
$slideCaption = $(".slides_container div.slide:eq("+ (current-1) +") .caption").text();
$("#headline h6").text($slideCaption);
if($slideCaption != ''){
$("#headline h6").fadeIn("slow");
}else{
$("#headline").hide("slow");
}
}
});
// default headline
$firstCaption = $(".slides_container div.slide:eq(0) .caption").text();
if($firstCaption != ''){
$("#headline h6").text($firstCaption);
}else{
$("#headline").hide();
}
}