• Stars
    star
    183
  • Rank 210,154 (Top 5 %)
  • Language
    JavaScript
  • Created almost 4 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

一个小巧玲珑的 vue 组件切换动画库, 支持 20 几种动画切换方式


一个小巧玲珑的 vue 组件切换动画库, 支持 10 几种动画切换方式, 效果十分炫酷并且非常轻量哦~

fadeInzoomRotateInflipshuttleRight

codesandbox在线调试 https://codesandbox.io/s/practical-sid-0ubim

安装

npm install transx
or
yarn add transx

使用

<!-- 包裹动画元素 -->
<trans-x
  :time="time"
  :delay="delay"
  :autoplay="autoplay"
  :loop="loop"
  :nextTransition="nextTransition"
  :prevTransition="prevTransition"
  ref="transx"
  @over="over"
  @transitionend="transitionEnd"
>
  <div class="comp" v-for="(item, index) in items" :key="index" :index="index + 1"></div>
</trans-x>
import TransX from "transx";

export default {
  components: {
    TransX
  },
  data() {
    return {
      time: 0.6,
      loop: true,
      autoplay: 1000,
      delay: -1,
      nextTransition: "fadeIn",
      prevTransition: "fadeIn",
      defaultIndex: 0
    }
  }
}

支持参数

参数 说明 类型 默认值 备注
time 动画时长 number 0.6 单位秒
loop 是否循环展现 boolean true
autoplay 是否自动循环 boolean, number false autoplay传递为true时,会赋予默认值1000,单位毫秒
delay 动画间隔 number -1
defaultIndex 默认显示第几张 number 0
nextTransition 下一个的动画,动画种类见下方 string moveLeftBack
prevTransition 上一个的动画,动画种类见下方 string moveRightBack

支持事件

  • over - 跳转到了边界后的回调,当在第一页继续上翻和在最后一页继续下翻时调用
  over: function(isEnd) {
    console.log('边界到了', isEnd);
  }

** 说明:当边界为翻到第一页时isEnd为false,当边界为翻到最后一页时isEnd为true,

  • transitionend - 动画结束时的回调,在动画结束后调用,参数为当前的索引,值从0开始
  transitionEnd: function(currentIndex) {
    console.log("当前到第几页了: ", currentIndex);
  }

支持API

  • goto - 跳转到第几页,参数为页码标识,索引从0开始
    this.$refs.transx.goto(3); // 跳转到第四页
  • prev - 跳转到上一页
    // 不传参
    this.$refs.transx.prev();
    // 传参
    this.$refs.transx.prev({
        time: 0.6,
        delay: -1,
        transition: "moveLeftQuart", // 参考下面[支持动画种类]
    });
  • next - 跳转到下一页
    // 不传参
    this.$refs.transx.next();
    // 传参
    this.$refs.transx.next({
        time: 0.6,
        delay: -1,
        transition: "moveLeftQuart", // 参考下面[支持动画种类]
    });

支持的动画种类

  • fadeIn: 淡入
  • fadeOut: 淡出
  • flip: 翻转
  • moveLeftQuart:
  • moveRightQuart:
  • moveLeftBack:
  • moveRightBack:
  • zoomOutBack:
  • zoomInBack:
  • rotateLeftBack:
  • rotateRightBack:
  • rotateLeftTop:
  • rotateRightTop:
  • zoomRotateIn:
  • zoomRotateOut:
  • shuttleLeft:
  • shuttleRight:
  • shuttleDown:
  • shuttleUp:
  • rollLeft:
  • rollRight:
  • scaleXLeft:
  • scaleXRight:

** 说明:种类较多,示例在这, 试试再选择,说不定有意外惊喜哦~

License

https://opensource.org/licenses/MIT

More Repositories

1

TNT-Weekly

🙈 🙉 🙊 每周为您推荐国内外前端领域最新的优秀文章以及行业进展
5,158
star
2

FFCreator

A fast video processing library based on node.js (一个基于node.js的高速视频制作库)
JavaScript
2,816
star
3

awesome-blackmagic

🎭 ♠♥奇技淫巧 💠黑魔法大集合♦♣ 👺
1,027
star
4

wp2vite

一个让webpack项目支持vite的前端项目的转换工具。A front-end project automatic conversion tool。
JavaScript
709
star
5

shida

《视搭》是一个视频可视化搭建项目。您可以通过简单的拖拽方式快速生产一个短视频,使用方式就像易企秀或Maka 等 h5 搭建工具一样的简单,仅抛砖引玉希望您喜欢。
Vue
569
star
6

FEDiagram

图说前端>>收集各种前端技术图谱 🚕🚖🚗🚚🚛🚜
440
star
7

csijs

CSI.JS是一个特别的前端日志系统,帮你快速重建犯罪现场。
JavaScript
275
star
8

bbo

bbo is a utility library of zero dependencies for javascript. 🍖🌭🍔
JavaScript
275
star
9

vue3-infinite-list

一个支持百万数量级的Vue3无限滚动列表组件
TypeScript
224
star
10

limu

High performance immutable lib alternative to immer with the same api, based on shallow copy on read and mark modified on write mechanism.
JavaScript
217
star
11

awesome-state

collection of state management lib
187
star
12

clean-state

🐻 A pure and compact state manager, using React-hooks native implementation, automatically connect the module organization architecture. 🍋
TypeScript
120
star
13

tntweb-admin

react admin management system template
CSS
38
star
14

awesome-ffcreator

awesome ffcreator projects
30
star
15

jscalpel

A small feature library that makes it easier to manipulate objects
JavaScript
27
star
16

manage-table

对antd的table进行扩展,支持配置展示列
JavaScript
13
star
17

data-filler

make your backend response data shape reliable, with data-filler you can stay away from optional chain
JavaScript
2
star
18

html3canvas

html convert to canvas
TypeScript
1
star
19

hel

a solution of using micro module for frontend development
TypeScript
1
star