vue实现跑马灯效果
程序员文章站
2022-05-15 22:52:57
...
分析:
1、给【浪起来】按钮;绑定一个点击事件 v-on @
2、在按钮的时间处理函数中,写相关的业务逻辑代码:拿到msg字符串,然后 调用字符串 substring 来进行字符串的截取操作,把第一个字符截取出来,放到最后一个位置即可;
3、为了实现点击一下按钮,自动截取的功能,需要把步骤2的代码,放到一个定时器中去;
创建一个控制区域
<div id="app">
<input type="button" value="浪起来" @click="lang">
<input type="button" value="低调" @click="stop">
<h4> {{ msg }} </h4>
</div>
显示效果代码
<script type="text/javascript">
// 注意:在VM实例中,如果想要获取data上的数据,或者想要调用methods中的方法,必须通过 this.数据属性名 或 this.方法名 来进行访问,这里的this,就表示我们new出来的 VM 实例对象
var vm = new Vue({
el: '#app',
data: {
msg: '跑马灯效果,别浪~~~!',
intervalId: null //在data上定义 定时器ID
},
methods: {
lang(){
// 获取到头的第一个字符
// this
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
} ,400)
// 注意:VM实例,会监听自己身上 data 中所有数据的改变,只要数据一发生变化,就会自动把 最新的数据,从 data 上同步到页面中去;【好处:程序员指需要关心数据,不需要考虑如何重新渲染DOM页面】
},
stop(){ //停止定时器
clearInterval(this.intervalId)
// 每当清除了定时器之后,需要重新把 intervalId 置为 null
this.intervalId = null;
}
}
})
</script>
上一篇: Vba Excel 到 word 实例
下一篇: redis存储的几种方式
推荐阅读
-
CSS3+JavaScript实现炫酷呼吸效果的示例代码
-
jQuery基于ajax实现带动画效果无刷新柱状图投票代码_jquery
-
css3实现的动画效果_html/css_WEB-ITnose
-
基于PHP实现假装商品限时抢购繁忙的效果,商品限时抢购
-
基于CSS3的animation属性实现微信拍一拍动画效果
-
css3实现小箭头各种图形效果
-
jQuery实现的checkbox级联选择下拉菜单效果示例
-
vue+springboot动态路由的实现
-
ipad平板电脑如何在新浪微博中发布多张图片?两种方法实现多图效果
-
类似 MSDN CSDN 左边导航树效果的实现! [javascript + ASP]