vue事件跟随鼠标显示事件详情

本文是写与vue中,但用法html也一样,很简单(如果对你有帮助点个赞谢谢哟(^U^)ノ~YO)
贴上代码:

<template>
  <div>
    <div class="a1" @mouseenter="enter($event)" @mouseleave="leave($event)">鼠标放上</div>
    <div class="a2" @mouseenter="enter($event)" @mouseleave="leave($event)">鼠标放上</div>
    <!--鼠标放上显示的div-->
    <div id="mouse" class="normal"></div>
  </div>
</template>

<script>

  export default {
    name:'',
    props:[''],
    data () {
      return {

      };
    },

    components: {},

    computed: {},

    beforeMount() {},

    mounted() {},

    methods: {
      enter(event){
        console.log(event)
        var showDiv = document.getElementById('mouse')
        showDiv.style='background-color:black;border:1px solid black'
        showDiv.style.left = (event.pageX-50) + 'px'
        showDiv.style.top = (event.pageY-100) + 'px'
        showDiv.style.display = 'block'
        var html ='今天是个好日子'
        showDiv.innerHTML = html
      },
      leave($event){
        // alert(2)
        var showDiv = document.getElementById('mouse')
        showDiv.style.display = 'none'
        showDiv.innerHTML = ''
      }
    },

    watch: {}

  }

</script>
<style lang='' scoped>
  .a1{
    position: relative;
    top: 20px;
    left: 50px;
    width: 100px;
    height: 100px;
    border: 1px solid red;
  }
  .a2{
    position: relative;
    top: 130px;
    left: 100px;
    width: 100px;
    height: 100px;
    border: 1px solid red;
  }
  .normal{
    position: absolute;
    opacity: 0.8;
    color: white;
    border-radius: 5px;
    padding: 20px;
    overflow: hidden;
    display: none;
  }
</style>

效果如图:
在这里插入图片描述
右侧控制台是事件信息以及位置
如果对你有帮助点个赞哟(^U^)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值