0.5.0 • Published 6 years ago

@autofe/slide v0.5.0

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

Slide

TODO

  • Touch 支持

HTML 结构要求

一般情况下使用 .athm-slide-* 风格的类名即可, 但是如果你有自定义的 class 名字,你可以通过配置 data-slide-* 风格的属性来配置对应的节点.

.athm-slide
  .athm-slide__inner  // overflow: hidden
    .athm-slide__track,[data-slide-track] // position: relative; width: 9999em;
      > .athm-slide__item,[data-slide-item] // float: left;
        a > img[title]
      > .athm-slide__item,[data-slide-item] // float: left;
      > .athm-slide__item,[data-slide-item] // float: left;
      ...
  .athm-slide__prev,[data-slide-prev]
  .athm-slide__next,[data-slide-next]
  .athm-slide__indicators,[data-slide-indicators]
    > a.active
    > a
    > a
    ...
  .athm-slide__title,[data-slide-title]
    > a

Usage

可以通过两种方式来初始化 Slide 控件, 你可以根据自己的需要来进行选择.

$('#slide').slide(options);
<div class="athm-slide" data-toggle="slide">
  ...
</div>

Options

参数可以通过 data attributes 或者 JavaScript 两种方式来配置.

NameTypeDefaultDescription
fadebooleanfalse是否开启 fade 模式
durationnumber400动画的时长, 以毫秒为单位.
intervalnumber5000自动播放间隔时间, 以毫秒为单位.
circlebooleantrue是否循环.
autoplaybooleantrue是否开启自动轮播.
keyboardbooleanfalse开启左右快捷键操作, 默认关闭.
pausestring or boolean'hover'鼠标在区域内时暂停循环, 如果想取消改功能, 可以取值 false .
toggleButtonbooleanfalse鼠标移入时是否显示左右箭头.
autoIndicatorsbooleanfalse自动创建导航器

Methods

.slide(options)

初始化当前 DOM 内容为一个 Slide , 可以接受参数进行配置.

$('#slide').slide({});

.slide('next')

前进到下一帧.

$('#slide').slide('next');

.slide('prev')

返回到上一帧.

$('#slide').slide('prev');

.slide('pause')

暂停播放.

$('#slide').slide('pause');

.slide('play')

开始播放.

$('#slide').slide('play');

.slide(number)

前进到第几帧(从1开始).

$('#slide').slide(3);

.slide('destroy')

销毁轮播控件.

$('#slide').slide('destroy');

Event

Event TypeDescription
init.fe.slide初始化时触发.
slide.fe.slide开始切换到下一帧时, 此事件会立即触发.
slid.fe.slide切换完毕时触发.
firstSlide.fe.slide开始切换到第一帧时触发, 仅限 circle: false.
firstSlid.fe.slide完成切换到第一帧时触发, 仅限 circle: false.
lastSlide.fe.slide开始切换到最后一帧时触发, 仅限 circle: false.
lastSlid.fe.slide完成切换到最后一帧时触发, 仅限 circle: false.
$('#slide').on('slid.fe.slide', function (e, slide) {
  // 打印当前是第几帧
  console.log('slid', slide.number);
});

End

Thanks to Bootstrap

0.5.0

6 years ago

0.4.1

6 years ago

0.4.0

6 years ago

0.3.0

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago