纯javascript移动优先的幻灯片效果


Posted in Javascript onNovember 02, 2015

简要教程
wallop是一款移动优先的纯javascript幻灯片插件。这个幻灯片插件仅4k大小,它的原理仅是为HTML元素添加和移除适当的class来显示和隐藏它们,至于这些class样式你可以完全自定义。特点有:
移动优先
动画和过渡效果都使用CSS来生成
轻量级,仅4k大小
高度灵活性和可扩展性
可自定义事件和API
没有任何外部依赖
          

纯javascript移动优先的幻灯片效果  

使用方法
使用该幻灯片插件首先需要引入wallop.css和Wallop.min.js文件。

<link rel="stylesheet" href="path/to/wallop.css">
<script src="path/to/Wallop.min.js"></script>

HTML结构

该幻灯片的基本HTML结构如下,你可以为第一个幻灯片slide添加.Wallop-item--current class。

<div class="Wallop">
 <div class="Wallop-list">
  <div class="Wallop-item">…</div>
  <div class="Wallop-item">…</div>
  <div class="Wallop-item">…</div>
  <div class="Wallop-item">…</div>
  <div class="Wallop-item">…</div>
 </div>
 <button class="Wallop-buttonPrevious">Previous</button>
 <button class="Wallop-buttonNext">Next</button>
</div>

 初始化插件

<script>
 var wallopEl = document.querySelector('.Wallop');
 var slider = new Wallop(wallopEl);
</script>

 添加动画效果

该幻灯片插件默认是没有动画过渡效果的,如果你需要添加动画效果,需要引入相应的wallop-animation.css文件,并为元素添加Wallop--xxxx class。例如要添加淡入淡出的效果:

<head>
 <link rel="stylesheet" href="path/to/wallop.css">
 <link rel="stylesheet" href="path/to/wallop-fade.css">
</head>        
<div class="Wallop Wallop--fade">
...
</div>

 可用动画类型

该幻灯片可用的过渡动画类型有:
Wallop--slide
Wallop--fade
Wallop--scale
Wallop--rotate
Wallop--fold
Wallop--vertical-slide

上面是一些内置的过渡动画类型,你也可以自定义自己的过渡动画。
 配置参数
下面是一些可用的配置参数:
buttonPreviousClass: 'Wallop-buttonPrevious'
buttonNextClass: 'Wallop-buttonNext'
itemClass: 'Wallop-item'
currentItemClass: 'Wallop-item--current'
showPreviousClass: 'Wallop-item--showPrevious'
showNextClass: 'Wallop-item--showNext'
hidePreviousClass: 'Wallop-item--hidePrevious'
hideNextClass: 'Wallop-item--hideNext'
carousel: true
 方法
Wallop幻灯片插件提供了一些基本的方法用于按钮的控制:
goTo

允许跳转到指定index的幻灯片上。

var slider = document.querySelector('.Wallop');
var Wallop = new Wallop(slider);
 
// 跳转到第二个slide(index从0开始)
Wallop.goTo(1);

next

跳转到下一个幻灯片slide。

var slider = document.querySelector('.Wallop');
var Wallop = new Wallop(slider);
 
// 跳转到下一个slide
Wallop.next();

previous

跳转到前一个幻灯片slide。

var slider = document.querySelector('.Wallop');
var Wallop = new Wallop(slider);
 
// 跳转到前一个slide
Wallop.previous();

 事件
Wallop在每一次slide改变的时候都会发出一个事件,它返回一个detail对象,该对象包含当前slide的index和Wallop对象。

var slider = document.querySelector('.Wallop');
var Wallop = new Wallop(slider);
 
Wallop.on('change', function(event) {
 // event.detail.wallopEl
 // => <div class="Wallop">…</div>
 
 // event.detail.currentItemIndex
 // => number
});

以上就是为大家分享的纯javascript移动优先的幻灯片效果制作过程,希望可以帮助大家制作更精美的幻灯片效果。

Javascript 相关文章推荐
JavaScript XML操作 封装类
Jul 01 Javascript
js导出table到excel同时兼容FF和IE示例
Sep 03 Javascript
js点击出现悬浮窗效果不使用JQuery插件
Jan 20 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
Sep 09 Javascript
微信小程序使用第三方库Underscore.js步骤详解
Sep 27 Javascript
JS实现的简单拖拽功能示例
Mar 13 Javascript
AngularJS实时获取并显示密码的方法
Feb 06 Javascript
vue+vuex+json-seiver实现数据展示+分页功能
Apr 11 Javascript
小程序分页实践之编写可复用分页组件
Jul 18 Javascript
javascript 高级语法之继承的基本使用方法示例
Nov 11 Javascript
Vue设置长时间未操作登录自动到期返回登录页
Jan 22 Javascript
解析原生JS getComputedStyle
May 25 Javascript
JS实现点击按钮获取页面高度的方法
Nov 02 #Javascript
基于jQuery实现自动轮播旋转木马特效
Nov 02 #Javascript
详解jQuery向动态生成的内容添加事件响应jQuery live()方法
Nov 02 #Javascript
jquery实现网页的页面平滑滚动效果代码
Nov 02 #Javascript
JS实现超简单的鼠标拖动效果
Nov 02 #Javascript
JS实现网页标题栏显示当前时间和日期的完整代码
Nov 02 #Javascript
JS实现在状态栏显示打字效果完整实例
Nov 02 #Javascript
You might like
DC这些乐高系列动画电影你看过几部?
2020/04/09 欧美动漫
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
php中__destruct与register_shutdown_function执行的先后顺序问题
2014/10/17 PHP
PHP实现C#山寨ArrayList的方法
2015/07/16 PHP
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
2008/12/29 Javascript
jquery中的$(document).ready()使用小结
2014/02/14 Javascript
Node.js中HTTP模块与事件模块详解
2014/11/14 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
2016/04/14 Javascript
BootStrap Typeahead自动补全插件实例代码
2016/08/10 Javascript
javascript实现无法关闭的弹框
2016/11/27 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
浅谈Redux中间件的实践
2018/07/27 Javascript
Vue实现导航栏的显示开关控制
2019/11/01 Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
2019/12/06 Javascript
vue 实现element-ui中的加载中状态
2020/11/11 Javascript
[00:48]DOTA2国际邀请赛公开赛报名开始 扫码开启逐梦之旅
2018/06/06 DOTA
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
python 巧用正则寻找字符串中的特定字符的位置方法
2018/05/02 Python
python 对dataframe下面的值进行大规模赋值方法
2018/06/09 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
Python 改变数组类型为uint8的实现
2020/04/09 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
python实现简单贪吃蛇游戏
2020/09/29 Python
python 利用百度API识别图片文字(多线程版)
2020/12/14 Python
python装饰器代码深入讲解
2021/03/01 Python
canvas 下载二维码和图片加水印的方法
2018/03/21 HTML / CSS
公司司机岗位职责
2014/02/07 职场文书
法制宣传教育方案
2014/05/09 职场文书
2014年班组长工作总结
2014/11/20 职场文书
父亲婚礼答谢词
2015/01/04 职场文书
贷款担保书范本
2015/09/22 职场文书
Python实现Telnet自动连接检测密码的示例
2021/04/16 Python
未发现nvidia显卡怎么办?Win11系统中未检测到nvidia显卡解决教程
2022/04/08 数码科技
JavaScript正则表达式实现注册信息校验功能
2022/05/30 Java/Android