跑马灯效果制作-下

简介: 跑马灯效果制作-下

跑马灯效果制作-

 

一、案例:跑马灯停止效果

 

前一节设置了跑马灯动起来的效果,现在希望它停止,这就需要定时器的功能。

继续 03.跑马灯效果.html文件的编辑,定义定时器Id

如果用:

var intervalId = se tInterval ( () => {

……

这时候,lang方法访问不到这个局部变量。这时候,最好把定时器的ID放到date里。

程序段为:

……

<div id="app">

     <input type= "button" value= "浪起来"  @click="lang">

     <input type= "button" value=" 低调" @click="stop">

     <h4>{{ msg }}</h4>

   </div>

   <script>

var vm = new Vue({

el: '#app'

data: {

msg: '猥琐发育,别浪~~ ! ',

intervalId: nul1 //data 上定义定时器Id

},

methods: {

lang() {

this.intervalId = setInterval (() => {

var start = this.msg.substring(0, 1)

var end = this.msg .substring (1)

this.msg=end+start

}400

}

stop() { //停止定时器

clearIntervalthis.intervalId

}

}

})

……

刷新Dooument浏览器页面,可以看到当点击 低调 按钮后,动态的效果立马停止。

其实,这里有个问题,比如点击 浪起来 按钮,开启定时器,那么再点击一次,就又开启了一次定时器。点几次就重复开启几次定时器,这样是不科学的。

一开始,定时器绑定intervalId: nu11,每当调用lang()的时候,会返回一个东西给intervalId保存。当内容复制完毕后不等于null

每次调用lang(),都代表点击按钮开启了定时器按钮。可以在开启之前,先判断intervalId是否等于null,如果等于null,那么字符串是停止的状态,就 可以开启定时器。如果不等于null,就不能在开启定时器。

lang(){}里加入判断代码段:

……

lang(){

if (this.intervalId != nul1) return ;

this.intervalId = setInterval (() => {

……

刷新Dooument浏览器页面,看到点击 浪起来 按钮,字符跑起来。点击 低调 按钮,就停止,再次点击 浪起来 按钮,字符仍旧停止不动的。

这里是因为,一开始intervalId 等于null,点击 浪起来 按钮,执行lang()方法,开了一个定时器,给intervalId赋值,这时intervalId 不等于null。然后每当点击stop,就会调用stop函数,清除定时器。虽然定时器被清除了,但是还未给它重新赋值为nullintervalId 不等于null,就不能再重新开启定时器。

重新赋值程序段:

……

}

stop() { //停止定时器

clearIntervalthis.intervalId

//每当清除了定时器之后,需要重新把intervalId 置为null

this.intervalId = null ;

}

……

刷新Dooument浏览器页面,可以看到,点击开启,跑起来,点击停止,就停下,还可以再次点击开启,又跑起来,点击停止,又停下的动作。

image.png

目录
打赏
0
0
0
0
12330
分享
相关文章
|
5月前
Threejs制作窗户透亮效果
这篇文章讲解了如何在Three.js中制作窗户的透亮效果,包括设置透明材质和光照以实现逼真的窗户渲染效果的技术细节。
112 1
|
4月前
CSS3制作的聚光灯下倒影文字选装动画特效源码
CSS3聚光灯下倒影文字特效是一段基于CSS3实现的聚光灯下带倒影的文字旋转动画效果代码,具有真实的视觉感,同时文字还会在旋转过程中显示出灯光的反射效果,很有意思,欢迎对此段代码感兴趣的朋友前来下载使用。
44 6
|
5月前
Threejs制作海面效果
这篇文章详细介绍了利用Three.js制作逼真海面效果的过程,包括设置Water材质、调整光照及实现波动动画的步骤。
104 0
Threejs制作海面效果
HTML+CSS+JavaScript制作动态七夕表白网页(含音乐+自定义文字)
一年一度的520情人节/七夕情人节/女朋友生日/程序员表白,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现HTML+CSS+JavaScript制作七夕表白网页(含音乐+自定义文字)。赶紧学会了,来制作属于我们程序员的浪漫吧!
232 0
|
10月前
|
【经验分享】使用swiper组件制作文字上下滚动播报效果
【经验分享】使用swiper组件制作文字上下滚动播报效果
347 6
跑马灯效果制作-上
一、总结学习的指令及功能 二、案例:跑马灯效果
跑马灯效果制作-上
如何用纯 CSS 创作气泡填色的按钮特效
效果预览 在线演示 按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。 https://codepen.io/comehope/pen/eKqZjy 可交互视频 此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。
1168 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等