一个轻量级的jQuery插件,用于从任何元素(如HTML列表或HTML5选择器)创建支持触摸和SEO友好的转盘。它很容易安装,并且可以根据您的需要随时进行自定义。
这个旋转木马插件是画廊、产品页面、内容密集的网站等的绝佳选择。对于任何想要在他们设计的任何网站上创建一个很棒的旋转木马的网页设计师来说,这都是一个很好的选择。
1.要开始,请在jQuery之后包含jCarouselLite插件的文件。
- <script src="/path/to/cdn/jquery.min.js"></script>
- <script src="/path/to/src/jquery.jcarousellite.js"></script>
2.将您的内容添加到转盘幻灯片中。这个旋转木马插件支持大多数类型的内容,如文本、图像、DIV等。
- <div class="carousel">
- <ul>
- <li>
- Slide 1
- </li>
- <li>
- Slide 2
- </li>
- <li>
- Slide 3
- </li>
- ...
- </ul>
- </div>
3.向转盘添加上一个/下一个按钮或分页链接。
- <button type="button" class="prev"><</button>
- <button type="button" class="next">></button>
- <!-- OR -->
- <div class="nav">
- <button type="button">1</button>
- <button type="button">2</button>
- <button type="button">3</button>
- ...
- </div>
4.隐藏溢出的内容。
- .carousel {
- overflow: hidden;
- }
5.初始化插件并完成。
- $('.carousel').jCarouselLite({
- btnNext: '.next',
- btnPrev: '.prev'
- });
- // OR
- $('.carousel').jCarouselLite({
- btnGo: $('div.nav').find('button'),
- });
6.在转盘上启用鼠标滚轮事件。需要jQuery鼠标滚轮插件。
- <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-mousewheel/3.1.13/jquery.mousewheel.min.js"></script>
- $('.carousel').jCarouselLite({
- btnNext: '.next',
- btnPrev: '.prev',
- mouseWheel: true,
- });
7.可用于自定义转盘的插件选项。
- $('.carousel').jCarouselLite({
- // container selector
- containerSelector: 'ul',
- // item selector
- itemSelector: 'li',
- // navigation selectors
- btnPrev: null,
- btnNext: null,
- // array (or jQuery object) of elements
- btnGo: null,
- // selector (or jQuery object) indicating the containing element for pagination navigation.
- autoPager: null,
- // disabled class
- btnDisabledClass: 'disabled',
- // class applied to the active slide and btnGo element
- activeClass: 'active',
- // class applied to the btnGo elements corresponding to the visible slides
- visibleClass: 'vis',
- // enable mousewheel support
- mouseWheel: false,
- // animation speed
- speed: 200,
- // additional easing functions
- easing: null,
- // milliseconds between scrolls
- timeout: 4000,
- // true to enable auto scrolling;
- // number to auto-scroll by different number at a time than that of scroll option
- auto: false,
- // true to enable changing direction of auto scrolling when user clicks prev or next button
- directional: false,
- // number of times before autoscrolling will stop.
- // (if circular is false, won't iterate more than number of items)
- autoStop: false,
- // pause scrolling on hover
- pause: true,
- // vertical layout
- vertical: false,
- // continue scrolling when reach the last item
- circular: true,
- // the number to be visible at a given time.
- visible: 3,
- // index of item to show initially in the first position
- start: 0,
- // number of items to scroll at a time
- scroll: 1,
- // whether to set initial styles on the carousel elements. See readme for info
- autoCSS: true,
- // whether the dimensions should change on resize
- responsive: false,
- // whether to set width of <li>s (and left/top of <ul>) based on width of <div>
- autoWidth: false,
- // touch options
- swipe: true,
- swipeThresholds: {
- x: 80,
- y: 40,
- time: 150
- },
- // whether to prevent vertical scrolling of the document window when swiping
- preventTouchWindowScroll: true,
- });
8.回调函数。
- $('.carousel').jCarouselLite({
- // The function can take 2 arguments:
- // 1. The merged options object
- // 2. A jQuery object containing the <li> items in the carousel
- // If the function returns `false`, the plugin will skip all the carousel magic for that carousel div
- init: function() {},
- // called once the first slide is hit
- first: null,
- // called once the last slide is hit
- last: null,
- // called before each transition starts
- beforeStart: null,
- // called after each transition ends
- afterEnd: null
- });
9.API方法。
- // pause
- $('.carousel').trigger('pauseCarousel');
- // resume
- $('.carousel').trigger('resumeCarousel');
- // stop
- $('.carousel').trigger('stopCarousel');
- // refresh
- $('.carousel').trigger('refreshCarousel', '[all]')
- // destroy
- $('.carousel').trigger('endCarousel');
- // goto the next slide
- $('div.carousel').trigger('go');
- // goto a specific slide
- $('.carousel').trigger('go', 3);
- // goto a specific slide relative to the currently active item
- $('.carousel').trigger('go', '+=2');
- $('.carousel').trigger('go', '-=2');