Vue实现鼠标经过文字显示悬浮框效果的示例代码


Posted in Javascript onOctober 14, 2020

需求

在所做的Vue项目中,需要在鼠标移动文字框的时候显示一些详细信息。最终实现的效果如下:

Vue实现鼠标经过文字显示悬浮框效果的示例代码

鼠标经过button的时候,可以在光标附近显示出一个悬浮框,显示框里面显示时间和值的信息,鼠标移出button元素的时候,这个显示框会消失。

分析

涉及到鼠标的移动事件。

鼠标事件有下面这几种:

1、onclick(鼠标点击事件)

box.onclick = function(e){
  console.log(e)
}

2、onmousedown(鼠标按下事件)

box.onmousedown = function(e){
  console.log(e)
}

3、onmouseup(鼠标松开事件)

box.onmouseup = function(e){
  console.log(e)
}

4、onmousemove(鼠标移动事件)

box.onmousemove = function(e){
  console.log(e)
}

5、onmouseout(鼠标划出事件)

box.onmouseout = function(e){
  console.log(e)
}

由鼠标的MouseEvent需要了解几个坐标:

一、clientX、clientY 点击位置距离当前body可视区域的x,y坐标

二、pageX、pageY 对于整个页面来说,包括了被卷去的body部分的长度

三、screenX、screenY 点击位置距离当前电脑屏幕的x,y坐标

四、offsetX、offsetY 相对于带有定位的父盒子的x,y坐标

五、x、y 和screenX、screenY一样

Vue实现鼠标经过文字显示悬浮框效果的示例代码

实现

我实现的思路是写了一个默认的空div,用来展示悬浮框信息。展示的悬浮框是绝对定位,一开始是隐藏的,当触发mouseover事件的时候,把display变为block块级元素,然后获取的event事件,

<div id="mouse" v-if="true" class="version_total">
  </div>
  .version_total{
  position: absolute;
  width: 10%;
  height: 5%;
 }

然后真正的div上面写个mousemove 绑定一个方法传递参数和event事件:在这个方法里面更改样式,最后用innerHtml来展现出来,需要给悬浮框的div元素设置top和left属性,具体的代码如下:

<div :class="[yxInfo[28].value==0 ? 'buttons2':'buttonsRed']" v-if="yxInfo[28]!=undefined" @mousemove="detailInfo($event,yxInfo[28])" @mouseleave="leave($event)" style="top: 37%;left: 63%">{{yxInfo[28].keyName}}</div>

detailInfo(e,data){
    var showDiv = document.getElementById('mouse')
    showDiv.style='background-color:#8c8c8c;border:1px solid black'
    showDiv.style.height='58px'
    showDiv.style.textAlign='left'
    showDiv.style.left = (event.pageX-300) + 'px'
    showDiv.style.top = (event.pageY-120) + 'px'
    showDiv.style.display = 'block'
    let time=data.time;
    let keyValue=data.value;
    var html ="<p>"+"时间:"+time+"</p>";
    var html2 ="<p>"+"值:"+keyValue+"</p>";
    showDiv.innerHTML = html+html2
   },
leave($event){
    var showDiv = document.getElementById('mouse')
    showDiv.style.display = 'none'
    showDiv.innerHTML = ''
}

到此这篇关于Vue实现鼠标经过文字显示悬浮框效果的示例代码的文章就介绍到这了,更多相关Vue 鼠标悬浮框内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
禁止F5等快捷键的JS代码
Mar 06 Javascript
js 代码优化点滴记录
Feb 19 Javascript
jQuery蓝色风格滑动导航栏代码分享
Aug 19 Javascript
jquery实现倒计时效果
Dec 14 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
Nov 25 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
Jan 30 Javascript
在JS中如何把毫秒转换成规定的日期时间格式实例
May 11 Javascript
Angularjs为ng-click事件传递参数
Jun 15 Javascript
jquery应用实例分享_实现手风琴特效
Feb 01 jQuery
vue生命周期与钩子函数简单示例
Mar 13 Javascript
vue制作抓娃娃机的示例代码
Apr 17 Javascript
uniapp开发打包多端应用完整方法指南
Dec 24 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
Oct 13 #Javascript
原生JS实现相邻月份日历
Oct 13 #Javascript
jquery简易手风琴插件的封装
Oct 13 #jQuery
原生js实现照片墙效果
Oct 13 #Javascript
js轮播图之旋转木马效果
Oct 13 #Javascript
Vue中正确使用Element-UI组件的方法实例
Oct 13 #Javascript
JavaScript数组常用的增删改查与其他属性详解
Oct 13 #Javascript
You might like
PHP4实际应用经验篇(1)
2006/10/09 PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
2008/12/06 PHP
PHP中foreach循环中使用引用要注意的地方
2011/01/02 PHP
浅析php中json_encode()和json_decode()
2014/05/25 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
jQuery将多条数据插入模态框的示例代码
2014/09/25 Javascript
Javascript基础教程之数组 array
2015/01/18 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
jquery实现轮播图效果
2017/02/13 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
2017/07/11 jQuery
vue实现动态列表点击各行换色的方法
2018/09/13 Javascript
详解Node.js异步处理的各种写法
2019/06/09 Javascript
微信小程序云函数使用mysql数据库过程详解
2019/08/07 Javascript
python深度优先搜索和广度优先搜索
2018/02/07 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
Python基础之函数的定义与使用示例
2019/03/23 Python
django表单的Widgets使用详解
2019/07/22 Python
10分钟教你用python动画演示深度优先算法搜寻逃出迷宫的路径
2019/08/12 Python
Pytorch 实现计算分类器准确率(总分类及子分类)
2020/01/18 Python
Python中的sys.stdout.write实现打印刷新功能
2020/02/21 Python
Python flask框架实现查询数据库并显示数据
2020/06/04 Python
获取python运行输出的数据并解析存为dataFrame实例
2020/07/07 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
德国大型箱包和皮具商店:Koffer
2019/10/01 全球购物
客房主管岗位职责
2013/12/09 职场文书
老师自我鉴定范文
2013/12/25 职场文书
服装创业计划书范文
2014/02/05 职场文书
公司经理任命书
2014/06/05 职场文书
法人代表任命书范本
2014/06/05 职场文书
竞选班干部演讲稿100字
2014/08/20 职场文书
导游词之天下银坑景区
2019/11/21 职场文书
基于python的matplotlib制作双Y轴图
2021/04/20 Python
如何理解python接口自动化之logging日志模块
2021/06/15 Python