轮播图触控滑块的js框架——Swiper

前言

滑窗优点

在现在的前端项目中,主页添加图片滑窗效果是被大部分项目给采用的,有以下原因:

  • 图片滑窗通过水平或垂直滑动的方式展示图片,有效节省了页面空间,使得页面布局更加紧凑,同时不会与页面其他元素发生冲突。
  • 滑窗效果使得图片展示更加动态和吸引人,用户可以通过简单的滑动操作浏览多张图片,增强了用户与页面的交互体验。
  • 相比于传统的静态图片展示,滑窗可以在有限的页面空间内展示更多的图片内容,让用户能够在短时间内获取更多的信息。
  • 滑窗效果可以通过CSS和JavaScript进行高度自定义,包括滑动速度、动画效果、样式等,可以根据项目需求进行灵活调整。
  • 现代浏览器对滑窗效果的兼容性较好,无论是PC端还是移动端,都能实现流畅的效果展示。

自己写滑窗注意项

  • 滑窗效果可能会涉及到大量的DOM操作和计算,因此需要注意性能优化,避免页面卡顿或崩溃。可以通过使用CSS3动画、减少DOM操作、利用事件委托等方式来提高性能。
  • 滑窗效果的设计需要符合用户的使用习惯,提供清晰的导航和反馈。例如,可以添加箭头按钮或指示器来指示当前图片的位置,同时提供便捷的切换方式。
  • 考虑到不同用户群体的需求,滑窗效果需要具备良好的可访问性。例如,可以为图片添加alt属性以提供文本描述,方便视觉障碍用户使用屏幕阅读器访问。
  • 滑窗效果需要适应不同设备和屏幕尺寸的展示需求。可以采用响应式设计方法,根据屏幕宽度自动调整滑窗的布局和样式。

在日常的项目中我们常常会用到滑窗效果,但是每个项目需求的滑窗样式只能说是大相径庭,我们还是需要修改许多的小地方,然后又去调整原来的逻辑。这些操作虽然不难但是还是十分消耗我们的时间这里我介绍一个滑窗库给大家使用,[Swiper演示 - Swiper中文网](https://link.juejin.cn?target=https%3A%2F%2Fswiper.com.cn%2Fdemo%2Findex.html "https://link.juejin.cn?target=https%3A%2F%2Fswiper.com.cn%2Fdemo%2Findex.html")(swiper.com.cn/demo/index....)

样式实例

下面这些滑窗效果便是使用Swiper库直接实现的:

上面这个滑窗简单,那下面这个呢?

关于Swiper:

Swiper 是一款免费以及轻量级的移动设备触控滑块的js框架,使用硬件加速过渡(如果该设备支持的话)。主要使用于移动端的网站、移动web apps,native apps和hybrid apps。主要是为IOS而设计的,同时,在Android、WP8系统也有着良好的用户体验,Swiper从3.0开始不再全面支持PC端。因此,如需在PC上兼容更多的浏览器,可以选择Swiper2.x(甚至支持IE7)。

使用教程

进入Swiper官方首页,可以研究官方文档

当然身为合格的切图崽,如果你的需求简单也可以是直接入在线演示选择我们需求的窗口。

使用方法

打开新窗口->右键->查看源代码->ctrl+c->回到自己的文件->ctrl+v

正所谓ctrl一下你就得到。

xml 复制代码
xml
复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="utf-8" />
  <title>Swiper demo</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
  <!-- Link Swiper's CSS -->
  <link rel="stylesheet" href="../package/swiper-bundle.min.css" />

  <!-- Demo styles -->
  <style>
    html,
    body {
      position: relative;
      height: 100%;
    }

    body {
      background: #eee;
      font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
      font-size: 14px;
      color: #000;
      margin: 0;
      padding: 0;
    }

    .swiper {
      width: 100%;
      height: 100%;
    }

    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  </style>
</head>

<body>
  <!-- Swiper -->
  <div class="swiper mySwiper">
    <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 class="swiper-slide">Slide 4</div>
      <div class="swiper-slide">Slide 5</div>
      <div class="swiper-slide">Slide 6</div>
      <div class="swiper-slide">Slide 7</div>
      <div class="swiper-slide">Slide 8</div>
      <div class="swiper-slide">Slide 9</div>
    </div>
    <div class="swiper-button-next"></div>
    <div class="swiper-button-prev"></div>
  </div>

  <!-- Swiper JS -->
  <script src="../package/swiper-bundle.min.js"></script>

  <!-- Initialize Swiper -->
  <script>
    var swiper = new Swiper(".mySwiper", {
      navigation: {
        nextEl: ".swiper-button-next",
        prevEl: ".swiper-button-prev",
      },
    });
  </script>
</body>

</html>

Swiper的功能十分强大,同时大家在使用时可以图片懒加载防抖节流等功能配合使用,如果觉得有用,欢迎留言交流。

相关推荐
如果超人不会飞2 分钟前
TinyRobot SuggestionPopover智能建议弹出框组件
前端·vue.js
LiuJun2Son17 分钟前
Angular 快速入门:从零搭建你的第一个应用
前端·javascript·angular.js
烬羽18 分钟前
从零理解树与二叉树:用 JS 带你手撕遍历和递归
javascript·数据结构
程序员二叉24 分钟前
【JVM】OOM详解+JVM参数+FullGC排查+CPU飙高+死锁+内存泄漏+命令大全
java·开发语言·jvm·面试
小徐_233325 分钟前
Wot UI 2.1.0 发布:ConfigProvider 全局配置能力升级
前端·uni-app
方白羽26 分钟前
Vibe Coding 四个核心阶段
android·前端·app
奶油话梅糖26 分钟前
浏览器解析 HTML 头部的底层逻辑:从字节流到资源调度
前端·html
YHL27 分钟前
🚀从零理解树与二叉树 —— 概念、实现与遍历
前端·javascript·数据结构
小时前端28 分钟前
微前端技术选型深度分析:从概念到实践
前端
十九画生29 分钟前
学 JavaScript 数据类型,真正要搞懂的是:变量里存的到底是什么?
javascript