vue製作跑馬燈效果
阿新 • • 發佈:2021-01-28
技術標籤:vue.js
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="./vue.js" ></script>
</head>
<body>
<div id="app">
<input type="button" value="啟動" v-on:click="start">
<input type="button" value="停止" @click="stop"><!--v-on的縮寫@-->
< p>{{msg}}</p>
</div>
<script>
var vm = new Vue({
el:'#app',
data:{
msg:'歡迎光臨Vue世界',
intervalid:null /// 把他設定為一個全部變數 在不同的函式中都可以使用
},
methods:{
start:function(){
// setInterval(function(){
// var first = this.msg.substring(0,1)//獲取第一個字元
// var end = this.msg.substring(1)//獲取從第二個字元以後的內容
// },400)
if(this.intervalid != null)return;//直接return 退出這個函式 不執行下面的程式碼
this.intervalid = setInterval( () => { //ES6箭頭函式 箭頭函式的this永遠指向其父作用域
var first = this.msg.substring(0,1)//獲取第一個字元
// console.log(first)
var end = this.msg.substring(1)//獲取從第二個字元以後的內容
// console.log(end)
this.msg = end + first
},400)
},
stop(){
clearInterval(this.intervalid)//停止定時器
this.intervalid = null
}
}
// 注意: VM例項 會監聽自己data中的所有資料 只要data中的資料一發生改變 就會自動同步到頁面的資料中
})
</script>
</body>
</html>
ctrl+shift+p 選擇
在瀏覽器中輸入localhost+本html檔案的相對路徑 即可訪問