Vue3实现跑马灯效果

 更新时间:2022年04月08日 08:29:25   作者:稳重聪头  
这篇文章主要为大家详细介绍了Vue3实现跑马灯效果,可以更换颜色,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Vue3实现跑马灯效果的具体代码,供大家参考,具体内容如下

先看效果:

html部分代码

<div class="app">
            <p :class="{tabcolor:color}">{{str}}</p>
            <button @click="play">开始</button>
            <button @click="stop">停止</button>
</div>

注意: :class="{tabcolor:color}" 是给<p></p>标签内的文字加上一个颜色,当我们点击开始按钮的时候。 

CSS部分代码

.tabcolor {
                color: cornflowerblue;
            }

CSS部分的代码很简单,就是给了一个添加颜色的类。

Vue部分代码

Vue.createApp({
            data() {
                return {
                    str: "你好啊,我是稳重聪头~",
                    id: null,
                    color: false,
                }
            },
            methods: {
                play() {
                    clearInterval(this.id);
                    this.color = !this.color;
                    this.id = setInterval(() => {
                        this.str = this.str.slice(1) + this.str.slice(0, 1)
                    }, 800)
                },
                stop() {
                    clearInterval(this.id);
                    this.color = false;
                }
            }
        }).mount(".app")

分析:

1、data上定义一个字符串,这个字符串就是要在<p></p>标签里进行滚动的。
2、给开始和关闭按钮,绑定事件:v-on; @cliick就是v-on的简写。
3、在按钮的事件函数中,写相关的业务逻辑代码:拿到str字符串,然后 调用字符串 slice 来进行字符串的截取操作,把第一个字符截取出来,放到最后一个位置即可。
4、为了实现最终结果,自动截取的功能,需要把步骤三的代码放到一个定时器中去。

最后在送上完整代码 

<!DOCTYPE html>
<html lang="en">
 
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="./js/vue.js"></script>
        <style type="text/css">
            .tabcolor {
                color: cornflowerblue;
            }
        </style>
    </head>
 
    <body>
        <div class="app">
            <p :class="{tabcolor:color}">{{str}}</p>
            <button @click="play">开始</button>
            <button @click="stop">停止</button>
        </div>
    </body>
    <script>
        Vue.createApp({
            data() {
                return {
                    str: "你好啊,我是稳重聪头~",
                    id: null,
                    color: false,
                }
            },
            methods: {
                play() {
                    clearInterval(this.id);
                    this.color = !this.color;
                    this.id = setInterval(() => {
                        this.str = this.str.slice(1) + this.str.slice(0, 1)
                    }, 800)
                },
                stop() {
                    clearInterval(this.id);
                    this.color = false;
                }
            }
        }).mount(".app")
    </script>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • vue中modal传输数据并刷新部分页面数据方式

    vue中modal传输数据并刷新部分页面数据方式

    这篇文章主要介绍了vue中modal传输数据并刷新部分页面数据方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • 教你使用vue-cli快速构建的小说阅读器

    教你使用vue-cli快速构建的小说阅读器

    这篇文章主要介绍了vue-cli构建的小说阅读器,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • 一篇文章带你了解vue.js的事件循环机制

    一篇文章带你了解vue.js的事件循环机制

    这篇文章主要为大家详细介绍了vue.js事件循环机制,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • Element-UI 使用el-row 分栏布局的教程

    Element-UI 使用el-row 分栏布局的教程

    这篇文章主要介绍了Element-UI 使用el-row 分栏布局的教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • vue实现拖拽进度条

    vue实现拖拽进度条

    这篇文章主要为大家详细介绍了vue实现拖拽进度条,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • 浅析Vue3中的逻辑复用

    浅析Vue3中的逻辑复用

    这篇文章主要为大家详细介绍了Vue3中逻辑复用的相关知识,文中的示例代码简洁易懂,对我们深入了解Vue3有一定的帮助,需要的小伙伴可以参考下
    2023-12-12
  • Vue实现动态路由导航的示例

    Vue实现动态路由导航的示例

    本文主要介绍了Vue实现动态路由导航的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Vue中的methods、watch、computed的区别

    Vue中的methods、watch、computed的区别

    这篇文章主要介绍了Vue中的methods、watch、computed的区别,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Vue axios库避免重复发送请求的示例介绍

    Vue axios库避免重复发送请求的示例介绍

    Axios是一个基于promise的HTTP库,可以用在浏览器和node.js中。axios是目前最优秀的HTTP请求库之一,我们封装axios请求也是为了让代码看的更加清晰,后期好维护
    2023-02-02
  • 详解vue项目中实现图片裁剪功能

    详解vue项目中实现图片裁剪功能

    这篇文章主要介绍了vue项目中实现图片裁剪功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06

最新评论