【发布时间】:2017-07-19 11:23:22
【问题描述】:
我已经构建了一个带有自动滑动的证词的滑块。第一次加载网页时,它会计算窗口的宽度并使用该值在整个文本块中移动,但是当我调整窗口大小时,它会保持以前的值并且一切都不平衡。
主要问题是滑块容器和幻灯片的值是百分比的,所以尝试$(window).resize(function(){$slides.width(width)});没有用。
HTML
<div class="testimonial-container">
<div class="testimonials">
<p>Text</p>
</div>
<div class="testimonials">
<p>Text</p>
</div>
<div class="testimonials">
<p>Text</p>
</div>
<div class="testimonials">
<p>Text</p>
</div>
CSS
.testimonial-container{
width: 400%;
}
.testimonials{
width: 25%;
float: left;
}
JQUERY
$(function(){
//configuration
var width=$(window).width();
var animationSpeed = 1200;
var pause = 3000;
var currentSlide = 1;
var interval;
//cache DOM
var $slider = $('#testimonial');
var $slideContainer = $slider.find('.testimonial-container');
var $slides = $slideContainer.find('.testimonials');
function startSlider(){
interval = setInterval(function(){
$slideContainer.animate({'margin-left':'-='+width},animationSpeed,"easeOutQuart", function(){
currentSlide++;
if(currentSlide === $slides.length){
currentSlide = 1;
$slideContainer.css('margin-left', 0);
addActive();
}
});
}, pause);
}
startSlider();
});
【问题讨论】:
-
您是否尝试过重新启动 widow.resize 上的滑块?