左右跑马灯的实现,其实很简单,但是为了让自己思考一下还是动动手吧。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./lib/vue.js"></script>
</head>
<body>
<div id="app">
<h4>{{msg}}</h4>
<input type="button" value="dong" @click="d">
<input type="button" value="ting">
</div>
<script>
var vm=new Vue({
el:'#app',
data:{
msg:'aaaaabbbbbbbxxxx'
},
methods:{
d(){
setInterval( () => {
var start = this.msg.substring(0,1)
var end = this.msg.substring(1)
this.msg=end+start
},400)
}
}
})
</script>
</body>
</html>
这其中涉及到了es6的一个妙用,哈哈,就是this的指向问题,在定时器里边包含的this会找不到它所应该指向的标签,这时候就可以用es6的箭头函数,箭头函数修复this的指向为外层的调用者obj