基于Vue实现标签的字体滚动

我不是女神ヾ 2022-12-05 00:55 185阅读 0赞

实现思路:

通过截取数据第一个字符,把它拼接到最后,通过定时器实现滚动效果,在vue中,当你更新data数据时,网页会自己帮你更新网页中的数据。

实现代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>基于Vue实现标签的字体滚动</title>
  6. <!--导入vue包-->
  7. <script src="lib/vue-2.4.0.js"></script>
  8. </head>
  9. <body>
  10. <div id="app">
  11. <!--通过v-on(缩写@)绑定点击事件-->
  12. <input type="button" name="" id="" value="跑起来" @click="running" />
  13. <input type="button" name="" id="" value="停一下" @click="stop" />
  14. <!--通过v-text获取数据-->
  15. <h1 v-text="msg"></h1>
  16. </div>
  17. <script type="text/javascript"> var vm=new Vue({ el:'#app', data:{ msg:'我要飞起来啦!奥利给,兄弟们', Intervalid:null,//用于后面清除定时器 }, methods:{ // running(){ // if(this.Intervalid!=null) return; //因为这里的this是指vue实例对象,而Interval里的this是指window,所以var _this=this;这样在Interval使用vue对象 // var _this=this; // _this.Intervalid=setInterval(function(){ //截取第一个字符 // var start=_this.msg.substring(0,1); //截取不是第一个字符 // var stop=_this.msg.substring(1); //重新赋值拼接 // _this.msg=stop+start; // },500) // } running(){ //防止开启多个定时器 if(this.Intervalid!=null) return; //通过使用ES6的()=>来实现Interval定时器的this指向外部的this指针 this.Intervalid=setInterval(()=>{ var start=this.msg.substring(0,1); var stop=this.msg.substring(1); this.msg=stop+start; },500) }, stop(){ //清除定时器 clearInterval(this.Intervalid); this.Intervalid=null; } } }); </script>
  18. </body>
  19. </html>

实现效果:
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,185人围观)

还没有评论,来说两句吧...

相关阅读