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

前言

滑窗优点

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

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

自己写滑窗注意项

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

在日常的项目中我们常常会用到滑窗效果,但是每个项目需求的滑窗样式只能说是大相径庭,我们还是需要修改许多的小地方,然后又去调整原来的逻辑。这些操作虽然不难但是还是十分消耗我们的时间这里我介绍一个滑窗库给大家使用,[Swiper演示 - Swiper中文网](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的功能十分强大,同时大家在使用时可以图片懒加载防抖节流等功能配合使用,如果觉得有用,欢迎留言交流。

相关推荐
逐·風3 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
Devil枫3 小时前
Vue 3 单元测试与E2E测试
前端·vue.js·单元测试
尚梦4 小时前
uni-app 封装刘海状态栏(适用小程序, h5, 头条小程序)
前端·小程序·uni-app
GIS程序媛—椰子4 小时前
【Vue 全家桶】6、vue-router 路由(更新中)
前端·vue.js
前端青山5 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js
毕业设计制作和分享5 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
从兄6 小时前
vue 使用docx-preview 预览替换文档内的特定变量
javascript·vue.js·ecmascript
鱼跃鹰飞6 小时前
大厂面试真题-简单说说线程池接到新任务之后的操作流程
java·jvm·面试
清灵xmf7 小时前
在 Vue 中实现与优化轮询技术
前端·javascript·vue·轮询
大佩梨7 小时前
VUE+Vite之环境文件配置及使用环境变量
前端