vue向下滚动后动态显示页面

前言

最近一直在鼓捣怎么给自己的个人博客(Vue项目)添加一个功能---向下滚动的时候,用一些动画展示页面,最终自己瞎折腾用Vue的自定义指令找出了看起来比较优雅的方法,不多说了,上代码!


代码

// 'animated bounceIn' 为animated.css里的
<div class="newBlog" v-scroll-show>
    <p class="headline animated bounceIn">最近更新</p>
    <div class="posts animated fadeIn">
        <p>文章</p>
    </div>
</div>
.newBlog {
    min-height: 500px;
}
.headline, .posts {
    display: none;
}
export default {
    directives: {
        scrollShow: {
            bind: (el) => {
                window.addEventListener('scroll', () => {
                    if (document.body.scrollTop + 400 > el.offsetTop) {
                        for (let i = 0; i < el.children.length; i++) {
                            setTimeout(() => {
                                el.children[i].style.display = 'block'
                            }, 1000 * i)
                        }
                    }
                })
            }
        }
    }
}

结尾

这是自己想的一个方法,如果各位有什么更优雅的方法去实现的话,欢迎告知,先谢谢啦!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值