移动端滑动插件Swipe教程


Posted in Javascript onOctober 16, 2016

前言

最近需要开发一个新的“微信活动平台”,手机端主页需要用到一个幻灯片。因为好一段时间没有全部手写移动端页面了,遂又重新找了一个下有没有什么好的幻灯片插件,毕竟重复造轮子没有必要啊。

综合比较后发现,Swipe 这款插件还是比较不错的,所以这里特地写一篇文章以像大家推荐,并且作为记录,方便下次查看。

简介

Swipe 是一个轻量级的移动滑动组件,这点从文件大小不难看出。它支持 1:1 的触摸移动,阻力以及防滑。单纯从移动端来使用,应该满足基本的需求了。

说明

从github下载后,可以发现,总共就8个文件,其中可能真正项目中用得到的,也基本就是1个 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>
  <!-- 幻灯片基础样式 -->
  <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>
  <!-- 幻灯片实例代买,前两层是外围容器 -->
  <div id='slider' class='swipe'>
   <div class='swipe-wrap'>
    <!-- 这三个是幻灯片内容,其中1,2,3等数字可换成图片,样式根据需求更改即可 -->
    <div>1</div>
    <div>2</div>
    <div>3</div>
   </div>
  </div>
  <!-- 页面幻灯片运行脚本(初始化) -->
  <script>
    window.mySwipe = Swipe(document.getElementById('slider'));
  </script>
</body>
</html>

以上代码运行结果:

 

通过鼠标点击或者放到手机上手指滑动,就可以看见幻灯片的运行效果了。当然,当前只是最基本的,全部都是默认配置。我们完全可以通过下面提供的参数,结合自己的需求,自义定出更好的效果来。

startSlide Integer (default:0) - index position Swipe should start at(滑动的索引值,即从*值开始滑动,默认值为0)

speed Integer (default:300) - speed of prev and next transitions in milliseconds.(滑动的速度,默认值300毫秒)

auto Integer - begin with auto slideshow (time in milliseconds between slides)(自动滑动,单位为毫秒)

continuous Boolean (default:true) - create an infinite feel with no endpoints(是否循环滑动,默认值为true)

disableScroll Boolean (default:false) - stop any touches on this container from scrolling the page(停止任何触及此容器上滚动页面,默认值flase)

stopPropagation Boolean (default:false) - stop event propagation(停止事件传播,默认值flase)

callback Function - runs at slide change.(回调函数)

transitionEnd Function - runs at the end slide transition.(滑动过渡时调用的函数)

下面就是官方给的演示例子:

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) {}
});

从中我们不难看出具体参数的使用方法和位置。这一个如果感兴趣,可以根据需要,自己加入参数试试,都是以json对象存在于Swipe的第二个参数的。

那么除了以上参数,Swipe还提供了一些常用的方法(API):

prev() slide to prev(上一页)

next() slide to next(下一页)

getPos() returns current slide index position(获取当前索引位置)

getNumSlides() returns the total amount of slides(获取所有滑块总数)

slide(index, duration) slide to set index position (duration: speed of transition in milliseconds)(指数,持续时间)滑动设置索引位置(持续时间:转型速度以毫秒为单位)

都是一些简单的接口方法,你可以Js调用他们以达到你想要的效果。

下载地址:https://github.com/thebird/swipe/

Javascript 相关文章推荐
JQuery 插件制作实践 xMarquee插件V1.0
Apr 02 Javascript
JS去除数组重复值的五种不同方法
Sep 06 Javascript
jquery分页对象使用示例
Apr 01 Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 Javascript
JavaScript判断undefined类型的正确方法
Jun 30 Javascript
js实现选中复选框文字变色的方法
Aug 14 Javascript
基于jQuery实现的幻灯图片切换
Dec 02 Javascript
微信小程序动态的加载数据实例代码
Apr 14 Javascript
JavaScript实现音乐自动切换和轮播
Nov 05 Javascript
vue 做移动端微信公众号采坑经验记录
Apr 26 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
Nov 16 Javascript
JavaScript文档对象模型DOM
Nov 20 Javascript
类似于QQ的右滑删除效果的实现方法
Oct 16 #Javascript
js实现点击图片自动提交action的简单方法
Oct 16 #Javascript
jQuery监听文件上传实现进度条效果的方法
Oct 16 #Javascript
浅谈js对象的创建和对6种继承模式的理解和遐想
Oct 16 #Javascript
利用jQuery对无序列表排序的简单方法
Oct 16 #Javascript
JS实现动态增加和删除li标签行的实例代码
Oct 16 #Javascript
js利用appendChild对标签进行排序的实现方法
Oct 16 #Javascript
You might like
用PHP编程语言开发动态WAP页面
2006/10/09 PHP
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
yii2实现 &quot;上一篇,下一篇&quot; 功能的代码实例
2017/02/04 PHP
PHP实现Markdown文章上传到七牛图床的实例内容
2020/02/11 PHP
javascript 函数速查表
2010/02/07 Javascript
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
table insertRow、deleteRow定义和用法总结
2014/05/14 Javascript
jquery浏览器滚动加载技术实现方案
2014/06/03 Javascript
AngularJS语法详解(续)
2015/01/23 Javascript
面试常见的js算法题
2017/03/23 Javascript
Easyui和zTree两种方式分别实现树形下拉框
2017/08/04 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
2017/11/03 Javascript
详解vue填坑之解决部分浏览器不支持pushState方法
2018/07/12 Javascript
解决layer.confirm选择完之后消息框不消失的问题
2019/09/16 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
Python的Django框架中forms表单类的使用方法详解
2016/06/21 Python
flask入门之表单的实现
2018/07/18 Python
Python简易计算器制作方法代码详解
2019/10/31 Python
TensorFlow打印输出tensor的值
2020/04/19 Python
如何用python处理excel表格
2020/06/09 Python
利用SVG和CSS3来实现一个炫酷的边框动画
2015/07/22 HTML / CSS
N.Peal官网:来自伦敦的高档羊绒品牌
2018/10/29 全球购物
French Connection官网:女装、男装及家居用品
2019/03/18 全球购物
eBay奥地利站:eBay.at
2019/07/24 全球购物
Made in Design德国:设计师家具、灯具和装饰
2019/10/31 全球购物
希腊品牌鞋类销售网站:epapoutsia.gr
2020/03/18 全球购物
Juice Beauty官网:有机美容产品,护肤与化妆品
2020/06/13 全球购物
腾讯公司的一个sql题
2013/01/22 面试题
创业大赛策划书
2014/03/01 职场文书
青春励志演讲稿
2014/04/29 职场文书
儿子满月酒致辞
2015/07/29 职场文书
大学新生入学感想
2015/08/07 职场文书
2015年幼儿园师德师风建设工作总结
2015/10/23 职场文书
OpenCV全景图像拼接的实现示例
2021/06/05 Python
JavaScript获取URL参数的方法分享
2022/04/07 Javascript
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android