在 vue3 中使用 ScrollReveal

news2024/9/29 23:31:59

文章目录

  • 什么是 ScrollReveal
  • 安装
  • 使用介绍

什么是 ScrollReveal

ScrollReveal 官网链接:https://scrollrevealjs.org/

ScrollReveal 是一个 JavaScript 库,用于在元素进入/离开视口时轻松实现动画效果。

先看个入门示例:

ScrollReveal 需要使用 CSS Transition 和 CSS Transform 来创建动画。现如今全球超过 94% 的浏览器都支持这两个功能。

另外,该库设计得既稳健又灵活,而且易用。

安装

  • npm 安装
    npm install scrollreveal --save
    
  • pnpm 安装(推荐)
    pnpm add scrollreveal
    

使用介绍

下面就展示上文的示例完整代码:

<template>
  <div>
    <h1>ScrollReveal 演示demo</h1>
    <div class="item" v-for="item in items" :key="item" :style="{ backgroundColor: item.bgColor }">
      {{ item.id }}
    </div>
  </div>
</template>

<script lang="ts" setup>
import { ref, onMounted } from 'vue'
import ScrollReveal from 'scrollReveal'
import { RandomColorGenerator } from 'random-color-creator'

const items = ref<any>([])
for (let i = 1; i <= 100; i++) {
  items.value.push({
    id: i,
    bgColor: RandomColorGenerator({ format: 'HEX' })
  })
}

onMounted(() => {
  ScrollReveal().reveal('.item', {
    reset: true,
    distance: '50px',
    origin: 'left',
    interval: 80,
    opacity: 0.1,
    rotate: {
      x: 20,
      z: 20
    },
    scale: 0.6
  })
})
</script>

<style>
.item {
  width: 100%;
  height: 7%;
  line-height: 72px;
  text-align: center;
  /* background-color: lightgreen; */
  border-radius: 8px;
  margin: 10px auto;
  font-size: 28px;
  flex: 1 1 0;
  color: #fff;
}
</style>

拓展:
上面代码示例中使用了一个生成随机颜色依赖 RandomColorGenerator,安装命令 npm i random-color-creator 或 pnpm add random-color-creator

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/789173.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mac brew安装 node 踩坑日记- n切换node不生效

最近用了一个旧电脑开发&#xff0c;发现里面node管理混乱&#xff0c;有nvm、n和homebrew&#xff0c;导致切换node 切换不了&#xff0c;开发也有莫名其妙的错误。所以我打算重新装一下node&#xff0c;使用n做为管理工具。 1. 删除nvm cd ~ rm -rf .nvm2. 删除n sudo rm -…

HarmonyOS/OpenHarmony元服务开发-创建一个ArkTS卡片

在已有的应用工程中&#xff0c;创建ArkTS卡片&#xff0c;具体操作方式如下。 1.创建卡片。 2.根据实际业务场景&#xff0c;选择一个卡片模板。 3.在选择卡片的开发语言类型&#xff08;Language&#xff09;时&#xff0c;选择ArkTS选项&#xff0c;然后单击“Finish”&…

【RS】基于规则的面向对象分类

ENVI使用最多的工具就是分类&#xff0c;这也是很多卫星影像的用途。在ENVI中有很多分类工具&#xff0c;如最基础的监督分类&#xff08;最大似然法、最小距离、支持向量机、随机森林&#xff09;、非监督分类&#xff08;K-means、IsoData&#xff09;&#xff0c;还有面向对…

sqlserver 复制数据库数据

sqlserver 建立索引 alter table [dbo].[SYS_MQTT_MESSAGE_LOG_1] add constraint pk0230725 primary key (smml_id) 主键 建聚集索引 其他的字段要和排序字段一起建索引

家政服务小程序制作攻略揭秘

想要打造一个家政服务小程序&#xff0c;但是又不懂编程和设计&#xff1f;不用担心&#xff01;下面将为你详细介绍如何利用第三方平台&#xff0c;从零开始打造一个家政服务小程序。 首先&#xff0c;你需要找到一个适合的第三方平台&#xff0c;例如乔拓云网。在乔拓云网的【…

2023年Q2京东小家电市场数据分析(京东数据运营)

伴随人们对生活品质追求的提高&#xff0c;以及拥有新兴消费理念的年轻人逐渐成为消费主力&#xff0c;功能新潮、外观精致的小家电经常在电商平台销售榜单里“榜上有名”。本期我们便一起来分析Q2京东小家电市场中&#xff0c;一些较为热门的精致生活小电的行业大盘变动情况。…

stm32 IIC通信

文章目录 IIC 通信一、硬件电路二、IIC时序基本单元三、IIC时序1.指定地址写2.当前地址读3.指定地址读 IIC 通信 IIC总线是一种通用数据总线&#xff0c;有两根通信线&#xff08;SCL(串行时钟总线),SDA&#xff08;串行数据总线&#xff09;&#xff09;。 特点&#xff1a;同…

学生管理系统-04VueX

一、本章目标 vuex的简介【重点】 掌握vuex的基本使用 掌握辅助函数来操作vuex 掌握vuex的模块化【难点】 掌握vuex的持久化 完成Tabs选项卡的二次封装 vuex的使用 封装组件 组件内路由守卫 二、vuex的简介 1、回顾组件之间的通讯 父组件向子组件通讯&#xff1a;通…

2. 两数相加

题目介绍 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c;这两个数都…

Hadoop 之 Hbase 配置与使用(四)

Hadoop 之 Hbase 配置与使用 一.Hbase 下载1.Hbase 下载 二.Hbase 配置1.单机部署2.伪集群部署&#xff08;基于单机配置&#xff09;3.集群部署1.启动 hadoop 集群2.启动 zookeeper 集群3.启动 hbase 集群4.集群启停脚本 三.测试1.Pom 配置2.Yml 配置3.Hbase 配置类4.Hbase 连…

LeetCode | Heap | 502.

502. IPO 是贪心算法in general。 一共两个变量&#xff1a;profit和capital。profit要求是找最大的。capital要求小于w。 两种筛选方法&#xff1a;把capital符合要求的排个序&#xff0c;找profit最大的。按照profit排序&#xff0c;从大到小找capital满足条件的。 哪种更…

flask结合mysql实现用户的添加和获取

1、数据库准备 已经安装好数据库&#xff0c;并且创建数据库和表 create database unicom DEFAULT CHARSET utf8 COLLATE utf8_general_ci; CREATE TABLE admin( id int not null auto_increment primary key, username VARCHAR(16) not null, password VARCHAR(64) not null…

C语言学习笔记 VScode设置C环境-06

目录 一、下载vscode软件 二、安装minGW软件 三、VS Code安装C/C插件 3.1 搜索并安装C/C插件 3.2 配置C/C环境 总结 一、下载vscode软件 在官网上下载最新的版本 Download Visual Studio Code - Mac, Linux, Windowshttps://code.visualstudio.com/download 二、安装minGW…

【Lua学习笔记】Lua入门

文章目录 Lua变量数据类型变量声明其他表示 Lua语法判断逻辑判断&#xff08;Lua很特殊&#xff0c;这个比较重要&#xff09;短路判断 ifif else 循环whileforrepeat 迭代器泛型for迭代器无状态迭代器多状态的迭代器 Lua函数select方法 数组字符索引_G &#xff08;不是教程&a…

毛绒玩具英国UKCA认证BS EN71检测

在2020年12月31日之后&#xff0c;欧盟统一标准将成为联合王国的“指定标准”&#xff0c;这类标准清单将由国务卿公布。 2021年1月1日&#xff0c;英国标准的实质内容将与欧盟采用的标准相同。 然而&#xff0c;他们将使用前缀“BS”来表示它们是 英国标准机构(BSI)作为英国国…

因数分解及统计(朴素版和优化版)--We Were Both Children(codeforces886 div4 F)

题目大意&#xff1a;就是有n个蛤蟆&#xff0c;他们可以必须每次跳a[i]个值的距离&#xff0c;而我们是负责捕捉的&#xff0c;肯定要找最多的相同点&#xff0c;这就相当于一个因数筛&#xff0c;看看这个筛中谁最多&#xff08;注意我们不可以在0点进行捕捉&#xff0c;并且…

网络安全作业1

URL编码 当 URL 路径或者查询参数中&#xff0c;带有中文或者特殊字符的时候&#xff0c;就需要对 URL 进行编码&#xff08;采用十六进制编码格式&#xff09;。URL 编码的原则是使用安全字符去表示那些不安全的字符。 安全字符&#xff0c;指的是没有特殊用途或者特殊意义的…

[RabbitMQ] RabbitMQ简单概述,用法和交换机模型

MQ概述&#xff1a; Message Queue(消息队列)&#xff0c;实在消息的传输过程中保存消息的容器&#xff0c;都用于分布式系统之间进行通信 分布式系统通信的两种方式&#xff1a;直接远程调用 和 借助第三昂 完成间接通信 发送方称谓生产者&#xff0c;接收方称为消费者 MQ优…

SpringBoot整合Druid

前提&#xff1a;在SpringBoot整合JDBC的基础上完成Druid的整合 SpringBoot整合JDBC 可参考--------> SpringBoot整合JDBC_Maiko Star的博客-CSDN博客 1. 添加Druid依赖 在pom.xml文件中添加Druid的依赖项。例如&#xff1a; <dependency><groupId>com.ali…

《面试1v1》Kafka的架构设计是什么样子

&#x1f345; 作者简介&#xff1a;王哥&#xff0c;CSDN2022博客总榜Top100&#x1f3c6;、博客专家&#x1f4aa; &#x1f345; 技术交流&#xff1a;定期更新Java硬核干货&#xff0c;不定期送书活动 &#x1f345; 王哥多年工作总结&#xff1a;Java学习路线总结&#xf…