移動(dòng)端滑動(dòng)插件Swipe教程
前言
最近需要開發(fā)一個(gè)新的“微信活動(dòng)平臺(tái)”,手機(jī)端主頁需要用到一個(gè)幻燈片。因?yàn)楹靡欢螘r(shí)間沒有全部手寫移動(dòng)端頁面了,遂又重新找了一個(gè)下有沒有什么好的幻燈片插件,畢竟重復(fù)造輪子沒有必要啊。
綜合比較后發(fā)現(xiàn),Swipe 這款插件還是比較不錯(cuò)的,所以這里特地寫一篇文章以像大家推薦,并且作為記錄,方便下次查看。
簡介
Swipe 是一個(gè)輕量級的移動(dòng)滑動(dòng)組件,這點(diǎn)從文件大小不難看出。它支持 1:1 的觸摸移動(dòng),阻力以及防滑。單純從移動(dòng)端來使用,應(yīng)該滿足基本的需求了。
說明
從github下載后,可以發(fā)現(xiàn),總共就8個(gè)文件,其中可能真正項(xiàng)目中用得到的,也基本就是1個(gè) swipe.js 文件。
index.html 和 style.css 本身是作為演示存在的,有興趣的可以研究一下。
那么我們具體如果使用它呢?很簡單,基本只要如下代碼即可:
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>演示</title> <!-- 首先引入JQuery --> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <!-- 引入核心swipe.js文件 --> <script src="swipe.js"></script> <!-- 幻燈片基礎(chǔ)樣式 --> <style> .swipe { overflow: hidden; visibility: hidden; position: relative; } .swipe-wrap { overflow: hidden; position: relative; } .swipe-wrap > div { float:left; width:100%; position: relative; font-size:140px; /* 這里樣式是為了演示方便,我特意加的 */ } </style> </head> <body> <!-- 幻燈片實(shí)例代買,前兩層是外圍容器 --> <div id='slider' class='swipe'> <div class='swipe-wrap'> <!-- 這三個(gè)是幻燈片內(nèi)容,其中1,2,3等數(shù)字可換成圖片,樣式根據(jù)需求更改即可 --> <div>1</div> <div>2</div> <div>3</div> </div> </div> <!-- 頁面幻燈片運(yùn)行腳本(初始化) --> <script> window.mySwipe = Swipe(document.getElementById('slider')); </script> </body> </html>
以上代碼運(yùn)行結(jié)果:
通過鼠標(biāo)點(diǎn)擊或者放到手機(jī)上手指滑動(dòng),就可以看見幻燈片的運(yùn)行效果了。當(dāng)然,當(dāng)前只是最基本的,全部都是默認(rèn)配置。我們完全可以通過下面提供的參數(shù),結(jié)合自己的需求,自義定出更好的效果來。
startSlide Integer (default:0) - index position Swipe should start at(滑動(dòng)的索引值,即從*值開始滑動(dòng),默認(rèn)值為0)
speed Integer (default:300) - speed of prev and next transitions in milliseconds.(滑動(dòng)的速度,默認(rèn)值300毫秒)
auto Integer - begin with auto slideshow (time in milliseconds between slides)(自動(dòng)滑動(dòng),單位為毫秒)
continuous Boolean (default:true) - create an infinite feel with no endpoints(是否循環(huán)滑動(dòng),默認(rèn)值為true)
disableScroll Boolean (default:false) - stop any touches on this container from scrolling the page(停止任何觸及此容器上滾動(dòng)頁面,默認(rèn)值flase)
stopPropagation Boolean (default:false) - stop event propagation(停止事件傳播,默認(rèn)值flase)
callback Function - runs at slide change.(回調(diào)函數(shù))
transitionEnd Function - runs at the end slide transition.(滑動(dòng)過渡時(shí)調(diào)用的函數(shù))
下面就是官方給的演示例子:
window.mySwipe = new Swipe(document.getElementById('slider'), { startSlide: 2, speed: 400, auto: 3000, continuous: true, disableScroll: false, stopPropagation: false, callback: function(index, elem) {}, transitionEnd: function(index, elem) {} });
從中我們不難看出具體參數(shù)的使用方法和位置。這一個(gè)如果感興趣,可以根據(jù)需要,自己加入?yún)?shù)試試,都是以json對象存在于Swipe的第二個(gè)參數(shù)的。
那么除了以上參數(shù),Swipe還提供了一些常用的方法(API):
prev() slide to prev(上一頁)
next() slide to next(下一頁)
getPos() returns current slide index position(獲取當(dāng)前索引位置)
getNumSlides() returns the total amount of slides(獲取所有滑塊總數(shù))
slide(index, duration) slide to set index position (duration: speed of transition in milliseconds)(指數(shù),持續(xù)時(shí)間)滑動(dòng)設(shè)置索引位置(持續(xù)時(shí)間:轉(zhuǎn)型速度以毫秒為單位)
都是一些簡單的接口方法,你可以Js調(diào)用他們以達(dá)到你想要的效果。
相關(guān)文章
egg.js的基本使用和調(diào)用數(shù)據(jù)庫的方法示例
這篇文章主要介紹了egg.js的基本使用和調(diào)用數(shù)據(jù)庫的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05layui-select動(dòng)態(tài)選中值的例子
今天小編就為大家分享一篇layui-select動(dòng)態(tài)選中值的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09JavaScript運(yùn)動(dòng)框架 多物體任意值運(yùn)動(dòng)(三)
這篇文章主要為大家詳細(xì)介紹了JavaScript運(yùn)動(dòng)框架的第三部分,多物體任意值運(yùn)動(dòng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05Echarts中X軸/Y軸坐標(biāo)標(biāo)簽顯示不下的問題解決
本文主要介紹了Echarts中X軸/Y軸坐標(biāo)標(biāo)簽顯示不下的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-09-09微信小程序 wx.login解密出現(xiàn)亂碼的問題解決辦法
這篇文章主要介紹了微信小程序 wx.login解密出現(xiàn)亂碼的問題解決辦法的相關(guān)資料,需要的朋友可以參考下2017-03-03js定時(shí)器怎么寫?就是在特定時(shí)間執(zhí)行某段程序
定時(shí)器想必大家并不陌生吧,在本文為大家詳細(xì)介紹下js中是如何實(shí)現(xiàn)定時(shí)器的,具體原理及代碼如下,感興趣的朋友不要錯(cuò)過2013-10-10Three.js 再探 - 寫一個(gè)微信跳一跳極簡版游戲
最近項(xiàng)目結(jié)束,很空閑,于是就試著仿照微信跳一跳寫了一個(gè)極簡版的游戲,到底簡單到什么程度呢?大家可以參考下本文2018-01-01