Swiper常用于移动端网站的内容触摸滑动
Swiper是什么?
swiper是纯javascript打造的滑动特效插件,面向手机、平板电脑等移动终端。
swiper能实现触屏焦点图、触屏Tab切换、触屏多图切换等常用效果。
swiper开源、免费、稳定、使用简单、功能强大,是架构移动终端网站的重要选择!
swiper的使用:
1.首先加载插件,需要用到的文件有swiper.min.js和swiper.min.css文件。
2.HTML内容。
<div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide">Slide 1</div> <div class="swiper-slide">Slide 2</div> <div class="swiper-slide">Slide 3</div> </div> <!-- 如果需要分页器 --> <div class="swiper-pagination"></div> <!-- 如果需要导航按钮 --> <div class="swiper-button-prev"></div> <div class="swiper-button-next"></div> <!-- 如果需要滚动条 --> <div class="swiper-scrollbar"></div> </div> 导航等组件可以放在container之外
3.初始化Swiper:最好是挨着</body>标签。
<script> var mySwiper = new Swiper ('.swiper-container', { direction: 'vertical', // 垂直切换选项 loop: true, // 循环模式选项 // 如果需要分页器 pagination: { el: '.swiper-pagination', }, // 如果需要前进后退按钮 navigation: { nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev', }, // 如果需要滚动条 scrollbar: { el: '.swiper-scrollbar', }, }) </script> </body>
简单来说就是三步!
1.引入swiper对应的css和js文件
2.按照框架的需求搭建三层结构
3.创建一个Swiper对象, 将容器元素传递给它
注意:
Swiper5 对比Swiper4 的API并无太大变化。Swiper5 增加了CSS模式(cssMode),并且可以通过CSS文件修改Swiper颜色风格。
Swiper Animate是Swiper中文网提供的用于在Swiper内快速制作CSS3动画效果的小插件,适用所有Swiper版本
如何使用Swiper Animate?
1. 使用Swiper Animate需要先加载swiper.animate.min.js和animate.min.css。
<!DOCTYPE html> <html> <head> ... <link rel="stylesheet" href="path/to/swiper.min.css"> <link rel="stylesheet" href="path/to/animate.min.css"> </head> <body> ... <script src="path/to/swiper.min.js"></script> <script src="path/to/swiper.animate.min.js"></script> </body> </html>
2. 初始化时隐藏元素并在需要的时刻开始动画。
<script> //Swiper5 var mySwiper = new Swiper ('.swiper-container', { on:{ init: function(){ swiperAnimateCache(this); //隐藏动画元素 swiperAnimate(this); //初始化完成开始动画 }, slideChangeTransitionEnd: function(){ swiperAnimate(this); //每个slide切换结束时也运行当前slide动画 //this.slides.eq(this.activeIndex).find('.ani').removeClass('ani'); 动画只展现一次,去除ani类名 } } }) </script>
3. 在需要运动的元素上面增加类名 ani ,和其他的类似插件相同,Swiper Animate需要指定几个参数:
swiper-animate-effect:切换效果,例如 fadeInUp
swiper-animate-duration:可选,动画持续时间(单位秒),例如 0.5s
swiper-animate-delay:可选,动画延迟时间(单位秒),例如 0.3s
<div class="swiper-slide"> <p class="ani" swiper-animate-effect="fadeInUp" swiper-animate-duration="0.5s" swiper-animate-delay="0.3s">内容</p> </div>
注意:
此插件不适用于loop模式
如果以上这些效果不能满足你的需求,你可以仿照animate.css的格式制作一些其他效果,加到你自己的css文件。其他参数:transition-timing-function 。
Swiper中文文档:https://www.swiper.com.cn/
Swiper Animate中文文档:https://www.swiper.com.cn/usage/animate/index.html