zoukankan      html  css  js  c++  java
  • Vue 控制鼠标移入移出事件文字的隐藏和显示

    1,要实现的效果就是文字A和文字B通过鼠标移入移出事件,使他们在界面上交替显示,就如同鼠标移入显示文字A,鼠标移出显示文字B.

    2,这个功能主要用v-for循环,和数组循环实现。

    首先我先建立一个数组,把框架搭建好。

     <div
          v-for="(arry, index) in itemse"
          :key="arry.index"
          :value="arry.value"
          :label="arry.label"
        >
          <label>{{ arry.name }}</label>
          <label>{{ arry.text }}</label>
        </div>
    <script>
    export default {
      data() {
        return {
          itemse: [
            { index: 1, name: "糖果", text: "阿尔卑斯" },
            { index: 2, name: "水果", text: "苹果" }
          ]
        };
      },
      methods: {}
    };
    </script>

    然后现在的样式就是这样子的了,

     现在需要加入移入移出事件@mouseenter=“enters(index)” @mouseleave=“leaver(index)”,达到最初想要的效果

     <div
          v-for="(arry, index) in itemse"
          :key="arry.index"
          :value="arry.value"
          :label="arry.label"
          @mouseenter="enters(index)"
          @mouseleave="leaver(index)"
        >
          <label v-show="switchNice[index].arry">{{ arry.name }}</label>
          <label v-show="switchNice[index].arrys">{{ arry.text }}</label>
        </div>
    <script>
    export default {
      data() {
        return {
          itemse: [
            { index: 1, name: "糖果", text: "阿尔卑斯" },
            { index: 2, name: "水果", text: "苹果" }
          ],
          switchNice: [
            //这绑定了上面V-show,
            {
              arry: true,
              arrys: false
            },
            {
              arry: true,
              arrys: false
            },
            {
              arry: true,
              arrys: false
            }
          ]
        };
      },
      methods: {
        enters(index) {
          this.switchNice[index].arry = false; //这里的先后顺序如果写反了 就会一直闪,这是根据上面那个思路写的,
          this.switchNice[index].arrys = true; //鼠标移入 首先是A先消失,然后B再出现的,写反就会疯狂闪。
        },
        leaver(index) {
          this.switchNice[index].arrys = false; //移出时也一样,先B消失 再出现A。
          this.switchNice[index].arry = true;
        }
      }
    };
    </script>

    现在的样式是:

    移入前:  移入后:

    大功告成

  • 相关阅读:
    html5--4-1 video/视频播放
    html5--3.22 综合实例03
    html5--3.21 课程小结与其他新增元素
    html5--3.20 新增的keygen元素
    UVA11324-- The Largest Clique(SCC+DP)
    memset函数具体说明
    XMPP协议的原理介绍
    探索WebKit内核(一)------ 菜鸟起步
    图像切割之(一)概述
    LeetCode——Count and Say
  • 原文地址:https://www.cnblogs.com/lovebear123/p/12133695.html
Copyright © 2011-2022 走看看