博主网站(未完善)
博主首页

目录

01图标库
02插件安装

01条件渲染
02列表渲染
03模板渲染
04计算属性
05侦听器
06样式绑定
07样式
08事件
09表单输入绑定
10生命周期
11组件
12脚手架
13vue-router
14vuex
15拖拽
16组件间传递

01HTML元素
02CSS样式

01filter、find……
02匿名函数……
03动态拼接地址
04vh、vm
05vue中ref
06js类型判断
07插槽
08富文本编辑器
09javaScript
10watch监听
11依赖注入
12ES6运算符
13flex-direction
14本地存储
15随机颜色
16中间延申
17多次触发问题
18nvm安装
19表单数据动态
20持久化存储
21$nextTick
22::v-deep
23tab失灵
25封装表单验证
26电梯导航栏
27页面滚动渐入动画

css3基础01

01bs列表
02bs栅格
03bs表单
更新中......

其他——27页面滚动渐入动画

1.安装动画库;

npm install animate.css

2、在main.js中引入;

import animate from "animate.css";

3、给对应的模块设置好想要的animate动画类名,通过一个变量控制是否添加/移除该类名,达到重复播放的效果;

 4、在mounted中给对应的模块创建监听,控制这个变量,进入区域为true,反之为fase;

mounted() {
    // 创建一个监听
    const introduce = new IntersectionObserver(
        (entries) => {
            // entries[0].intersectionRatio 的范围是 0.0 ~ 1.0
            if (entries[0].intersectionRatio > 0.5) {
                // 开启动画
                this.introduceShow = true;
            } else {
                // 关闭动画
                this.introduceShow = false;
            }
        },
        // threshold:是一个数组,默认为[0],决定了监听对象的交叉区域与边界区域的比率为多少时触发
        { threshold: [0, 0.25, 0.5, 0.75, 1] }
    );
    // 设置监听的模块
    introduce.observe(document.querySelector(".introduce"));
},

效果:

 

posted @ 2023-06-25 16:49  !ment  阅读(55)  评论(0编辑  收藏  举报