这是一款基于slick旋转木马插件来制作的jQuery幻灯片特效。该幻灯片特效使用缩放和淡入淡出的过渡动画效果,它支持移动触摸设备,效果非常炫酷。
slick是一款支持移动设备的旋转木马插件。slick功能强大,它提供众多的参数,使你能够轻松的制作出各种旋转木马和幻灯片特效。
使用方法
在页面中引入slick插件的相关文件。
<link rel='stylesheet prefetch' href='https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick.min.css'>
<link rel='stylesheet prefetch' href='https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick-theme.min.css'>
<script src='js/jquery.min.js'></script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick.min.js'></script>
HTML结构
该幻灯片的HTML结构如下:
<div class="slideshow">
<div class="slider">
<div class="item">
<img src="1.jpg" />
</div>
<div class="item">
<img src="2.jpg" />
</div>
<div class="item">
<img src="3.jpg" />
</div>
<div class="item">
<img src="4.jpg" />
</div>
</div>
</div>
CSS样式
为幻灯片添加下面的必要CSS样式:幻灯片的过渡动画使用自定义的贝兹曲线函数。另外图片默认被放大1.2倍,当前激活的图片会被添加.slick-active
class,此时图片被缩放会原来的大小。
.slideshow {
position: relative;
z-index: 1;
height: 100%;
max-width: 700px;
margin: 50px auto;
}
.slideshow * {
outline: none;
}
.slideshow .slider {
box-shadow: 0 20px 50px -25px black;
}
.slideshow .slider-track {
-webkit-transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
}
.slideshow .item {
height: 100%;
position: relative;
z-index: 1;
}
.slideshow .item img {
width: 100%;
-webkit-transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
.slideshow .item.slick-active img {
-webkit-transform: scale(1);
transform: scale(1);
}
初始化插件
在页面DOM元素加载完毕之后,可以通过下面的方法来初始化slick插件。
$('.slider').slick({
autoplay:true,
autoplaySpeed:3000,
draggable: true,
arrows: false,
dots: true,
fade: true,
speed: 900,
infinite: true,
cssEase: 'cubic-bezier(0.7, 0, 0.3, 1)',
touchThreshold: 100
})