Skidder是一款响应式无限轮播的jQuery旋转木马插件。它可以自动将图片居中对齐,组成首尾相接的一组图片,通过导航按钮或移动触摸滑动来前后切换图片。它的特点还有:

  • 图片自动居中对齐。
  • 无限循环轮播。
  • 响应式设计,图片自动适应窗口大小。
  • 可以在移动设备上触摸滑动。
  • 兼容IE8+的IE浏览器。

使用方法

使用该旋转木马插件需要在页面中引入jquery.skidder.css和jquery,以及jquery.skidder.js文件。

<link rel="stylesheet" href="path/to/jquery.skidder.css">
<script src="path/to/jquery.skidder.js"></script>
<script src="path/to/jquery.skidder.js"></script>             
                
HTML结构

该旋转木马的基本HTML结构如下:

<div class="slideshow" style="display: none;">
  <div class="slide"><img src="1.jpg"></div>
  <div class="slide"><img src="2.jpg"></div>
  <div class="slide"><img src="3.jpg"></div>
</div>                  
                
初始化插件

在页面DOM元素加载完毕之后,通过skidder()方法来初始化该旋转木马插件。

$('.slideshow').skidder();
                

要确保图片在插件初始化之前就被全部加载,否则不能正确的计算图片的高度。可以使用imagesloaded.js来完成这项工作。

$('.slideshow').each( function() {
  var $slideshow = $(this);
  $slideshow.imagesLoaded( function() {
    $slideshow.skidder();
  });
});                  
                

要动态改变图片的尺寸大小,插件中使用了第三方的smartresize

$(window).smartresize(function(){
  $('.slideshow').skidder('resize');
});                  
                

配置参数

Skidder旋转木马插件的配置参数如下:

参数 描述
slideClass slide元素的class名称。默认为".slide"
animationType 该插件支持CSS动画和jQuery动画。可选值为: 'animate', 'css'。默认值为 'animate'
lazyLoad 懒加载,默认值为false
lazyLoadAutoInit 默认值为true
lazyLoadWindow 默认值为1
scaleSlides 是否根据maxWidth, maxHeight和scaleTo参数缩放slide为统一的值。默认为true。
scaleTo 定义缩放模式。有2种模式:最小模式和响应式模式。可选值为:"smallest"和[x, y]。"smallest"表示高度最小的图片绝对幻灯片的高度。[x, y]表示使用一个数组中的两个数值来定义幻灯片的比例。默认为"smallest"模式。
maxWidth 现在幻灯片的最大宽度,0或"none"表示不限制。默认为800
maxHeight 现在幻灯片的最大高度,0或"none"表示不限制。默认为500
preservePortrait 在响应式模式中该参数有效。决定小于比例的图片的填充模式。true表示适应视口高度,水平方向上留空白。默认为false。
paging 设置为true时,插件会查找pagingElement元素的包裹元素pagingWrapper来设置padding。如果这两个元素不存在,插件会自动创建它们。默认为true。
pagingWrapper 分页圆点的包裹元素,默认为'.skidder-pager'
pagingElement 分页圆点元素,默认为'.skidder-pager-dot'
swiping 是否在移动触摸设备上允许swiping。默认为true
leftaligned 如果不希望幻灯片居中,设置为true,默认为false
cycle 是否循环显示,默认为true。
jumpback 在非循环模式时,最后一张幻灯片会显示'return to first slide'箭头。默认为false
speed 过渡动画的速度,默认为400
autoplay 是否总播放,默认为false
autoplayResume 是否在互动后恢复自动播放,默认为false
interval 自动播放的时间间隔,默认为4000
transition 过渡动画效果,'slide' 或 'fade'
directionClasses 在过渡动画结束后为slides添加 'left-from-active' 和 'right-from-active' class类。
afterSliding 旋转木马改变后的回调函数
afterInit 旋转木马初始化后的回调函数
afterResize 旋转木马尺寸改变时的回调函数

skidder旋转木马插件的github地址为:https://github.com/null2/skidder