热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaScriptLibrary–Swiper

前言官网已经有很好的教程了,这篇只是记入一些我用过的东西和冷门知识. 参考官网安装官网Demo 安装yarnaddSwiperJSimportSwiper,{Navigation}

前言

官网已经有很好的教程了, 这篇只是记入一些我用过的东西和冷门知识.

 


参考

官网安装

官网 Demo

 


安装

yarn add Swiper

JS

import Swiper, { Navigation } from 'swiper'; // core and modules
import 'swiper/css'; // core css
import 'swiper/css/navigation'; // module css

const swiper
= new Swiper('.swiper', {
modules: [Navigation],
// modules
// config
navigation: {
nextEl:
'.swiper-button-next',
prevEl:
'.swiper-button-prev',
},
});

它的调用是 import js & css from node_modules

有分 core module 和其它 modules (比如 navigation, pagination 等等, 都是按需加载的)

setup 就是 import modules 和 configuration.


HTML

<div class="swiper">
<div class="swiper-wrapper">
<div class="swiper-slide">slide1div>
<div class="swiper-slide">slide2div>
div>
<div class="swiper-button-next">div>
<div class="swiper-button-prev">div>
div>

第一层 swiper 就是一个大 container, 自带 margin-auto (居中) 哦

第二层 wrapper 是用来把 slide 横排的, 它是 Flex.

第三层就是所有的 slides 了.

内容就放在 slide 里面. 不建议直接把内容当 slide 来使用, 给它 wrap 一层比较好.

 


常用 config


左右箭头

 

 

 JS

modules: [Navigation],
navigation: {
nextEl:
'.swiper-button-next',
prevEl:
'.swiper-button-prev',
},

无限循环

JS

loop: true,

Slide per view

 

红色是 1 个 view, 绿色是一个 slide, 可以指定 1 个 view 里面出现都少个 slide. 它会自动去 set slide 的 width.

 

slidesPerView: 3,
spaceBetween:
30,

space between 就是 gap, 间距. unit 是 px


breakpoint

breakpoints: {
640: {
slidesPerView:
2,
spaceBetween:
20,
},
768: {
slidesPerView:
4,
spaceBetween:
40,
},
1024: {
slidesPerView:
5,
spaceBetween:
50,
},
},

不同 breakpoint 下用不同的切换不同的 config

 


Navigation outside container

Swiper 默认是把 navigation 放到 container 里面的. 有时候它会被挡住, 这样很不好看.

HTML

JS

new Swiper('.swiper', {
modules: [Navigation],
navigation: {
nextEl:
'.swiper-button-next',
prevEl:
'.swiper-button-prev',
},
slidesPerView:
4,
spaceBetween:
40,
});

解决方案

stackoverflow – CSS - How to have swiper slider arrows outside of slider that takes up 12 column row

它只给了一个思路, 把 navigation 放到 container 外面

但这样是不够的, prev, next 是绝对定位, 必须在加上一个 wrapper 才可以

添加一个 swiper-container, 把 prev, next 移到外面











CSS Style

.swiper-container {
position
: relative;
padding-inline
: 6rem;
width
: 50%;
margin-inline
: auto;
.swiper {
.swiper-wrapper {
.swiper-slide {
img {
max-width
: 100%;
}
}
}
}
}

关键是让 container 取代 .swiper

最终效果:

 

 

 绿色部分就是 padding 的作用了.

 



推荐阅读
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文总结了Java中日期格式化的常用方法,并给出了示例代码。通过使用SimpleDateFormat类和jstl fmt标签库,可以实现日期的格式化和显示。在页面中添加相应的标签库引用后,可以使用不同的日期格式化样式来显示当前年份和月份。该文提供了详细的代码示例和说明。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • importjava.util.ArrayList;publicclassPageIndex{privateintpageSize;每页要显示的行privateintpageNum ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • npminstall-Dbabelcorebabelpreset-envbabelplugin-transform-runtimebabelpolyfillbabel-loader ... [详细]
author-avatar
MySeptember
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有