lightslider-支援移動觸控的輕量級jQuery幻燈片外掛
阿新 • • 發佈:2018-11-15
外掛簡介
lightslider是一款輕量級的響應式jQuery幻燈片外掛。lightslider幻燈片外掛能夠支援移動觸控裝置,它可以製作為帶縮圖的內容幻燈片,或者製作為無限迴圈的旋轉木馬。它的特點還有:
下載地址
下載地址:http://www.jqhtml.com/5633.html
功能
- 完全響應式設計,自動適配任何裝置。
- 可以單獨設定每一個breakpoint。
- 畫廊模式中可以建立帶縮圖的幻燈片。
- 支援移動手機的swipe和觸控拖拽。
- 可動態新增或刪除幻燈片。
- 檔案體積小,主題豐富,實現簡單。
- 採用CSS過渡效果,不支援CSS過渡效果的瀏覽器中使用jQuery來回退。
- 提供豐富的回撥函式和公開方法。
- 提供自動播放和無限迴圈的旋轉木馬模式。
- 支援鍵盤、箭頭和圓點導航。
- 跨瀏覽器、跨裝置:Chrome, Safari, Firefox, Opera, IE7+, IOS, Android, windows phone。
- 同一個頁面中可以生成多個幻燈片例項。
- 幻燈片的內容可以是圖片、視訊等。
安裝
可以通過npm或bower來安裝該幻燈片外掛。
$ bower install lightslider
$ npm install lightslider
也可以下載安裝包,在頁面中引入檔案 外掛下載地址http://www.jqhtml.com/5633.html
官方地址 http://sachinchoolur.github.io/lightslider/index.html
<link type="text/css" rel="stylesheet" href="css/lightslider.css" />
<script src="js/jquery.min.js"></script>
<script src="js/lightslider.js"></script>
使用方法
HTML結構
<ul id="lightSlider"> <li> <h4>First Slide</h4> <p>Lorem ipsum Cupidatat quis pariatur anim.</p> </li> <li> <h4>Second Slide</h4> <p>Lorem ipsum Excepteur amet adipisicing fugiat velit nisi.</p> </li> ... </ul>
初使化外掛
$(document).ready(function() {
$("#lightSlider").lightSlider();
});
引數設定示例
$(document).ready(function() {
$("#lightSlider").lightSlider();
});
Play with settings
$(document).ready(function() {
$("#lightSlider").lightSlider({
item: 3,
autoWidth: false,
slideMove: 1, // slidemove will be 1 if loop is true
slideMargin: 10,
addClass: '',
mode: "slide",
useCSS: true,
cssEasing: 'ease', //'cubic-bezier(0.25, 0, 0.25, 1)',//
easing: 'linear', //'for jquery animation',////
speed: 400, //ms'
auto: false,
loop: false,
slideEndAnimation: true,
pause: 2000,
keyPress: false,
controls: true,
prevHtml: '',
nextHtml: '',
rtl:false,
adaptiveHeight:false,
vertical:false,
verticalHeight:500,
vThumbWidth:100,
thumbItem:10,
pager: true,
gallery: false,
galleryMargin: 5,
thumbMargin: 5,
currentPagerPosition: 'middle',
enableTouch:true,
enableDrag:true,
freeMove:true,
swipeThreshold: 40,
responsive : [],
onBeforeStart: function (el) {},
onSliderLoad: function (el) {},
onBeforeSlide: function (el) {},
onAfterSlide: function (el) {},
onBeforeNextSlide: function (el) {},
onBeforePrevSlide: function (el) {}
});
});
引數配置
引數 | 型別 | 預設值 | 描述 |
item | number | 3 | 同時顯示的slide的數量 |
autoWidth | boolean | false | 定製每一個slide的寬度 |
slideMove | number | 1 | 同一時間被移動的slide的數量 |
slideMargin | number | 10 | 每一個slide之間的間距 |
addClass | string | '' | 為幻燈片新增額外的class |
mode | string | 'slide' | 動畫過渡的型別,可以是'slide'或'fade' |
useCSS | boolean | true | true表示使用CSS動畫過渡效果,false表示使用jQuery動畫過渡效果 |
cssEasing | string | 'ease' | CSS過渡動畫使用的easing效果 |
easing | string | 'linear' | jQuery過渡動畫使用的easing效果 |
speed | number | 400 | 過渡動畫的持續時間,單位毫秒 |
auto | boolean | false | 如果設定為true,幻燈片將自動播放 |
pauseOnHover | boolean | false | 滑鼠滑過時停止自動播放 |
loop | boolean | false | false表示在播放到最後一幀時不會跳轉到開頭重新播放 |
slideEndAnimation | bolean | true | 允許slideEnd動畫 |
pause | number | 2000 | 兩個過渡動畫之間的間隔時間 |
keyPress | boolean | false | 是否允許使用鍵盤導航 |
controls | boolean | true | 如果設定為false,prev/next按鈕將不會被顯示 |
prevHtml | string | '' | 自定義prev按鈕的HTML |
nextHtml | string | '' | 自定義next按鈕的HTML |
rtl | boolean | false | 改變方向,從右到左 |
adaptiveHeight | boolean | false | 基於各個slide的高度來動態調整幻燈片的高度 |
vertical | boolean | false | 製作垂直幻燈片效果 |
verticalHeight | number | 500 | 垂直幻燈片模式中設定slide的高度(如果slide數量大於1) |
vThumbWidth | number | 100 | 垂直幻燈片模式中縮圖的寬度 |
thumbItem | number | 10 | 同時顯示縮圖的數量 |
pager | boolean | true | 是否開啟圓點導航 |
gallery | boolean | true | 是否開啟帶縮圖的幻燈片模式 |
galleryMargin | number | 5 | 畫廊和slide之間的間距 |
thumbMargin | number | 3 | 縮圖之間的間距 |
currentPagerPosition | string | 'middle' | 縮圖的位置,可以是: 'left', 'middle', 'right' |
enableTouch | boolean | true | 是否支援移動觸控 |
enableDrag | boolean | true | 是否支援桌面裝置中使用滑鼠拖拽切換幻燈片 |
freeMove | boolean | true | 是否允許在swipe或drag的時候自由移動幻燈片 |
responsive | object | null | 單獨設定每一個breakpoint |
回撥函式
回撥函式 | 引數 | 描述 |
onBeforeStart | el | 幻燈片開始載入時觸發 |
onSliderLoad | el | 幻燈片被載入後立刻執行 |
onBeforeSlide | el | 每一個slide過渡動畫之前被執行 |
onAfterSlide | el | 每一個slide過渡動畫之後被執行 |
onBeforeNextSlide | el | 每一次"Next" slide過渡動畫被執行前觸發 |
onBeforePrevSlide | el | 每一次"Prev" slide過渡動畫被執行前觸發 |
公開方法
方法 | 描述 |
goToSlide() | 跳轉到指定的slide |
goToPrevSlide() | 跳轉到前一個slide |
goToNextSlide() | 跳轉到下一個 |
refresh | 重新整理幻燈片 |
play() | 播放幻燈片 |
pause() | 暫停幻燈片 |
公開方法示列
<script type="text/javascript">
$(document).ready(function() {
var slider = $("#lightSlider").lightSlider();
slider.goToSlide(3);
slider.goToPrevSlide();
slider.goToNextSlide();
slider.getCurrentSlideCount();
slider.refresh();
slider.play();
slider.pause();
});
</script>