移動端滑動插件Swipe教程
前言
最近需要開發(fā)一個(gè)新的“微信活動平臺”,手機(jī)端主頁需要用到一個(gè)幻燈片。因?yàn)楹靡欢螘r(shí)間沒有全部手寫移動端頁面了,遂又重新找了一個(gè)下有沒有什么好的幻燈片插件,畢竟重復(fù)造輪子沒有必要啊。
綜合比較后發(fā)現(xiàn),Swipe 這款插件還是比較不錯(cuò)的,所以這里特地寫一篇文章以像大家推薦,并且作為記錄,方便下次查看。
簡介
Swipe 是一個(gè)輕量級的移動滑動組件,這點(diǎn)從文件大小不難看出。它支持 1:1 的觸摸移動,阻力以及防滑。單純從移動端來使用,應(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ī)上手指滑動,就可以看見幻燈片的運(yùn)行效果了。當(dāng)然,當(dāng)前只是最基本的,全部都是默認(rèn)配置。我們完全可以通過下面提供的參數(shù),結(jié)合自己的需求,自義定出更好的效果來。
startSlide Integer (default:0) - index position Swipe should start at(滑動的索引值,即從*值開始滑動,默認(rèn)值為0)
speed Integer (default:300) - speed of prev and next transitions in milliseconds.(滑動的速度,默認(rèn)值300毫秒)
auto Integer - begin with auto slideshow (time in milliseconds between slides)(自動滑動,單位為毫秒)
continuous Boolean (default:true) - create an infinite feel with no endpoints(是否循環(huán)滑動,默認(rèn)值為true)
disableScroll Boolean (default:false) - stop any touches on this container from scrolling the page(停止任何觸及此容器上滾動頁面,默認(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.(滑動過渡時(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í)間)滑動設(shè)置索引位置(持續(xù)時(shí)間:轉(zhuǎn)型速度以毫秒為單位)
都是一些簡單的接口方法,你可以Js調(diào)用他們以達(dá)到你想要的效果。
相關(guān)文章
微信小程序web-view環(huán)境下H5跳轉(zhuǎn)小程序頁面方法實(shí)例代碼
微信小程序是一種全新的連接用戶與服務(wù)的方式,它可以在微信內(nèi)被便捷地獲取和傳播,同時(shí)具有出色的使用體驗(yàn),下面這篇文章主要給大家介紹了關(guān)于微信小程序web-view環(huán)境下H5跳轉(zhuǎn)小程序頁面方法的相關(guān)資料,需要的朋友可以參考下2022-08-08
JavaScript高級程序設(shè)計(jì) 閱讀筆記(十九) js表格排序
js表格排序?qū)崿F(xiàn)代碼,需要的朋友可以參考下2012-08-08
javascript HTML5文件上傳FileReader API
這篇文章主要介紹了javascript HTML5文件上傳FileReader API的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-04-04
js+css實(shí)現(xiàn)有立體感的按鈕式文字豎排菜單效果
這篇文章主要介紹了js+css實(shí)現(xiàn)有立體感的按鈕式文字豎排菜單效果,通過javascript動態(tài)調(diào)用頁面元素樣式實(shí)現(xiàn)豎排菜單的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09
20個(gè)你不得不知道的JS async/await實(shí)用技巧
JavaScript的async和await關(guān)鍵詞是現(xiàn)代JavaScript異步編程的核心,它們讓異步代碼看起來和同步代碼幾乎一樣,使得異步編程變得更加直觀和易于管理,本文介紹20個(gè)關(guān)于async/await的實(shí)用技巧,將大大提升編程效率和代碼的清晰度,需要的朋友可以參考下2023-12-12
JS+CSS實(shí)現(xiàn)炫酷算盤時(shí)鐘效果
這篇文章主要為大家詳細(xì)介紹了如何使用JavaScript和CSS實(shí)現(xiàn)炫酷算盤時(shí)鐘效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12

