我有一个测试页面 ,以便更好地解释我的问题。 我有一个名单上的几个项目(他们在测试页上的图像); 当我点击其中的一个,相应的幻灯片,使用flexslider,sldes下来。
问题是,在网页加载时,幻灯片显示所有幻灯片一次,在一个更小的尺寸比预期的。 不过,如果我从窗口切换焦点(即浏览器标签页之间切换或移动到另一个程序,回来),幻灯片现在工作和幻灯片是适当的大小。 这发生在移动设备上了。
当我与萤火虫检查,有适用于ul.slides的element.style规则:
transform: translate3d(-89px, 0px, 0px);
其中隐藏的幻灯片之一。 此外,还有的是赋予了它们最初的宽度,这甚至不是所有的滑块一样的,所以我不明白的地方它是来自于内部ul.slides列表项其他规则。
可有人来看看,并提出一个解决? 我试着重写element.style规则,但至今未果。
我想我至少想通了,在主...
.flexslider{display:none;}
似乎甩开Flexslider的再大小功能。 你可能只是将其删除,但使一些丑陋的负荷。
为了避免说丑装我把一个快,工作around- 的jsfiddle
$(document).ready(function(){
$(".flexslider").css('display','block').slideUp();
});
有一个还是一个快速的毛刺,同时加载,但希望它至少会引导你在正确的方向。
我有位出场的另一种方法是尝试并强制调整大小功能类似所谓
$(".client").click(function () {
$('.flexslider').resize(); // Problematic but promising
var project = this.id;
var project_id = '#' + project + '-project';
var elem = $(".flexslider:visible").length ? $(".flexslider:visible"): $(".flexslider:first");
elem.slideUp('slow', function () {
$(project_id).slideDown('slow');
});
});
这类解决了小型图片问题,但参差不齐最好。