gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
阅读:5474回复:3

Vue :class、Style 动态样式绑定实现 toggleClass

楼主#
更多 发布于:2021-03-31 16:06

<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="../node_modules/vue/dist/vue.js"></script>
    <style>
      .active {
        color: rebeccapurple;
      }
    </style>
  </head>


  <body>
    <div id="app">
      <div @click="toggleClass" :class="{active:isActive}">Swish Swish</div>
    </div>

    <script>
      let vm = new Vue({
        el: "#app",
        data: {
          isActive: false
        },
        methods: {
          toggleClass: function() { this.isActive = !this.isActive; }
        }
      });
    </script>


  </body>
</html>
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
沙发#
发布于:2021-03-31 16:08
  1. 数组语法,效果同上‘’


<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="../node_modules/vue/dist/vue.js"></script>
    <style>
      .active {
        color: rebeccapurple;
      }
    </style>
  </head>


  <body>
    <div id="app">
      <h1 @click="addClass" :class="[activated]">Swish Swish</h1>
    </div>

    <script>
      let vm = new Vue({
        el: "#app",
        data: {
          activated: ""
        },
        methods: {
          addClass: function() { this.activated = this.activated === "active" ? "" : "active"; }
        }
      });
    </script>
  </body>


</html>
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
板凳#
发布于:2021-03-31 16:09
  1. Style 样式绑定

<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="../node_modules/vue/dist/vue.js"></script>
  </head>


  <body>
    <div id="app">
      <h1 @click="changeClass" :style="styleObj">Swish Swish</h1>
    </div>

    <script>
      let vm = new Vue({
        el: "#app",
        data: {
          styleObj: {
            color: "black"
          }
        },
        methods: {
          changeClass: function() {
            this.styleObj.color = this.styleObj.color === "black" ? "rebeccapurple" : "black"; }
        }
      });
    </script>


  </body>
</html>
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
地板#
发布于:2021-03-31 16:09
游客


返回顶部