css动画让文字一行一行逐渐显示

3 篇文章 0 订阅
2 篇文章 0 订阅

这几天在做一个年终总结的活动,需要将显示的内容以动画的形式逐渐显示,

而且还要使用轮播的效果显示好几页,每页内容都不同

其实简单的css就可以实现,但是css代码太长,就写了个循环用js实现啦我是在Vue的基础上写的,

1、轮播可以使用插件swiper,使用可以参考 https://www.swiper.com.cn/,或者我下篇文章介绍

2、每页轮播页面设置类名 swiper1,swiper2...,content_box是每页的内容

 <div class="swiper-slide swiper2">
        <div class="content_box">
          <p>2018年01月01日</p>
          <p>故事与你,不期而遇</p>
        </div>
        <div class="content_box">
          <p >你的第一篇作品</p>
          <p>《我的心里也有鬼》</p>
          <p>与我们见面</p>
        </div>
        <div class="content_box">
          <p>至此,你已创作</p>
          <p> 文章</p>
        </div>
       
      </div>

3、定义动画

@keyframes  ani{
      0%{  opacity:0; }
      100%{ opacity:1; }
  }

4、写个动画的方法

animation() {

      var start = 2;  //开始时间

      var end;

      for(var j =2; j <8; j++) {        //循环有多少页

        for(var i= 1; i < 5; i++) {     //循环每页的内容

          end = start + 0.4       //结束时间=开始时间+0.4s

          $('.swiper'+j+' .content_box:nth-child('+i+')').css('animation','ani '+start+'s '+end+'s both')

          start = end;   //每行内容结束将结束时间赋值给下一行开始时间

        }

        start = start + 1   //每页翻页的时候防止时间间隔太短动画效果不明显,所以开始时间+1s

      }

        

    },

  • 8
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值