移动端滑动插件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 相关文章推荐
slice函数的用法 之不错的应用
Dec 29 Javascript
索趣科技的答案
Feb 07 Javascript
判断js对象是否拥有某一个属性的js代码
Aug 16 Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
Mar 27 Javascript
jQuery读取XML文件内容的方法
Mar 09 Javascript
深入理解JS正则表达式---分组
Jul 18 Javascript
jquery事件与绑定事件
Mar 16 Javascript
关于jQuery中fade(),show()起始位置的一点小发现
Apr 25 jQuery
Angularjs上传文件组件flowjs功能
Aug 07 Javascript
详解如何在react中搭建d3力导向图
Jan 12 Javascript
JS实现数组深拷贝的方法分析
Mar 06 Javascript
小程序实现投票进度条
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
WINDOWS 2000下使用ISAPI方式安装PHP
2006/09/05 PHP
解析php中获取系统信息的方法
2013/06/25 PHP
phpMyAdmin通过密码漏洞留后门文件
2018/11/20 PHP
javascript+mapbar实现地图定位
2010/04/09 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
jquery跟js初始化加载的多种方法及区别介绍
2014/04/02 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
JavaScript实现信用卡校验方法
2015/04/07 Javascript
JavaScript中String.prototype用法实例
2015/05/20 Javascript
js轮播图代码分享
2016/07/14 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
从零开始学习Node.js系列教程二:文本提交与显示方法
2017/04/13 Javascript
Angular实现可删除并计算总金额的购物车功能示例
2017/12/26 Javascript
手把手教你写一个微信小程序(推荐)
2018/10/17 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
[03:54]DOTA2英雄梦之声_第06期_昆卡
2014/06/23 DOTA
Djang中静态文件配置方法
2015/07/30 Python
人机交互程序 python实现人机对话
2017/11/14 Python
对python模块中多个类的用法详解
2019/01/10 Python
Python神奇的内置函数locals的实例讲解
2019/02/22 Python
Django框架模板的使用方法示例
2019/05/25 Python
python datetime中strptime用法详解
2019/08/29 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
实列教程 一款基于jquery和css3的响应式二级导航菜单
2014/11/13 HTML / CSS
AmazeUI底部导航栏与分享按钮的示例代码
2020/08/18 HTML / CSS
华三通信H3C面试题
2015/05/15 面试题
Linux如何压缩可执行文件
2013/10/21 面试题
工程管理专业毕业生自荐信
2014/01/24 职场文书
公司薪酬管理制度
2014/01/31 职场文书
公司办公室岗位职责
2014/03/19 职场文书
动画设计系毕业生求职信
2014/07/15 职场文书
2015秋季开学典礼致辞
2015/07/16 职场文书
2015年公路路政个人工作总结
2015/07/24 职场文书
个人的事迹材料怎么写
2019/04/24 职场文书
2019朋友新婚祝福语精选
2019/10/10 职场文书
python tkinter Entry控件的焦点移动操作
2021/05/22 Python