基于JavaScript实现鼠标悬浮弹出跟随鼠标移动的带箭头的信息层


Posted in Javascript onJanuary 18, 2016

很多网站,当鼠标悬浮在一个元素上的时候能够弹出一个信息说明层,并且此层能够跟随鼠标移动,同时弹出的层带有箭头,此箭头指向鼠标悬浮的元素,下面就通过实例代码简单介绍一下如何实现此效果。
代码实例如下:

<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="https://3water.com/" />
<title>三水点靠木</title>
<style type="text/css">
#content
{
width:100px;
height:100px;
background:green;
position:relative;
margin:100px;
}
#inform
{
width:200px;
height:200px;
border:1px solid #ccc;
background:white;
display:none;
position:absolute;
}
#inform span
{
width:0px;
height:0px;
border-width:10px;
border-style:none solid solid none;
position:absolute;
}
#inform .tb-border
{
left:-10px;
border-color:transparent #ccc transparent transparent;
top:-1px;
}
#inform .tb-background
{
left:-9px;
border-color:transparent white transparent transparent;
}
</style>
<script type="text/javascript">
window.onload=function()
{
var content=document.getElementById("content");
var inform=document.getElementById("inform");
content.onmouseover=function(ev)
{
var ev=ev||event;
inform.style.display="block";
inform.style.left=(ev.clientX-this.offsetLeft+20)+"px";
inform.style.top=(ev.clientY-this.offsetTop-20)+"px";
}
content.onmousemove=function(ev)
{
var ev=ev||event;
inform.style.left=(ev.clientX-this.offsetLeft+20)+"px";
inform.style.top=(ev.clientY-this.offsetTop-10)+"px";
}
content.onmouseout=function(ev){inform.style.display="none";}
}
</script>
</head>
<body>
<div id="content">
<div id="inform">
<span class="tb-border"></span>
<span class="tb-background"></span>
</div>
</div>
</body>
</html>

以上代码实现了我们的要求,当鼠标放在div中的时候能够弹出一个信息层,并且能够跟随鼠标移动,弹出层的带有指示的箭头,代码非常的简单这里就不多介绍了,如有任何疑问可以跟帖留言或者参阅相关阅读。

Javascript 相关文章推荐
一款js和css代码压缩工具[附JAVA环境配置方法]
Apr 16 Javascript
JavaScript 面向对象与原型
Apr 10 Javascript
javascript Promise简单学习使用方法小结
May 17 Javascript
利用JQuery阻止事件冒泡
Dec 01 Javascript
详解JavaScript中this的指向问题
Jan 20 Javascript
浅谈vue-router2路由参数注意的问题
Nov 08 Javascript
Vue 2.5.2下axios + express 本地请求404的解决方法
Feb 21 Javascript
iview日期控件,双向绑定日期格式的方法
Mar 15 Javascript
vue-router路由模式详解(小结)
Aug 26 Javascript
深入理解webpack process.env.NODE_ENV配置
Feb 23 Javascript
js实现烟花特效
Mar 02 Javascript
15个值得收藏的JavaScript函数
Sep 15 Javascript
jQuery插件Validate实现自定义校验结果样式
Jan 18 #Javascript
jQuery插件实现带圆点的焦点图片轮播切换
Jan 18 #Javascript
轻松实现js图片预览功能
Jan 18 #Javascript
jQuery插件Validate实现自定义表单验证
Jan 18 #Javascript
Jquery和angularjs获取check框选中的值的方法汇总
Jan 17 #Javascript
node.js+express制作网页计算器
Jan 17 #Javascript
JQuery实现网页右侧随动广告特效
Jan 17 #Javascript
You might like
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
Mozilla 表达式 __noSuchMethod__
2009/04/05 Javascript
javascript的渐进增强与平稳退化浅谈
2013/11/12 Javascript
按下回车键指向下一个位置的一个函数代码
2014/03/10 Javascript
js清空表单数据的两种方式(遍历+reset)
2014/07/18 Javascript
推荐4个原生javascript常用的函数
2015/01/12 Javascript
jquery 设置style:display的方法
2015/01/29 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
基于jQuery的AJAX和JSON实现纯html数据模板
2016/08/09 Javascript
jQuery  ready方法实现原理详解
2016/10/19 Javascript
Node.js使用gm拼装sprite图片
2017/07/04 Javascript
layui实现下拉框三级联动
2019/07/26 Javascript
使用AutoJs实现微信抢红包的代码
2020/12/31 Javascript
跟老齐学Python之Python文档
2014/10/10 Python
Python实现将绝对URL替换成相对URL的方法
2015/06/28 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
Python实现的读写json文件功能示例
2018/06/05 Python
python 统计列表中不同元素的数量方法
2018/06/29 Python
numpy.random模块用法总结
2019/05/27 Python
Flask框架中request、请求钩子、上下文用法分析
2019/07/23 Python
微信小程序python用户认证的实现
2019/07/29 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
使用python-cv2实现Harr+Adaboost人脸识别的示例
2020/10/27 Python
CSS3实现时间轴效果
2016/07/11 HTML / CSS
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
红色康乃馨酒店:Red Carnation Hotels
2017/06/22 全球购物
英国电子产品购物网站:TobyDeals
2018/07/30 全球购物
Jar包的作用是什么
2014/03/30 面试题
施工协议书范本
2014/04/22 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
2014年企业团支部工作总结
2014/12/10 职场文书
同学毕业留言寄语
2015/02/27 职场文书
起诉意见书范文
2015/05/19 职场文书
紧急迫降观后感
2015/06/15 职场文书
MySQL新手入门进阶语句汇总
2022/09/23 MySQL