<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>跑馬燈輪播</title> <script src="js/vue.js"></script> </head> <body> <div id="app" align="center"> <input type="button" value="我飄過" @click="start" > <input type="button" value="腿斷了" @click="stop"> <h4>{{msg}}</h4> </div> <script> var vm = new Vue({ el: '#app', data: { msg: '我是跑馬燈,你過來呀', //定時器 intervalId: null }, methods: { start(){ //如果當前為start,再點擊start,則無效,只有當點擊stop后再點擊start才有效 if(this.intervalId !=null) return; //啟動計時器 this.intervalId = setInterval(()=>{ var start = this.msg.substring(0,1); // 獲取到 后面的所有字符 var end = this.msg.substring(1); //前后重新拼接得到新的字符串,並賦值給 this.msg this.msg = end + start; },200)//200為間隔時間 }, stop(){ //清除定時器 clearInterval(this.intervalId) //將定時器id重置為null this.intervalId = null; } } }) </script> </body> </html>