鼠标移到div,浮层显示明细,弹出层与div的上边距左边距重合(示例代码)


Posted in Javascript onDecember 14, 2013

如下所示:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
        .toopTip
        {
            background-color:Yellow;
            border-style:solid;
            border-width:1px;
            border-color:Red;
        }
    </style>
   <script language="javascript" type="text/javascript">
       /*
            如果希望提示的div的左边界与上边界与显示的div重叠,那么需要删除文档头W3C标准
            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">       */
       function initEvent() {
           var divArray = document.getElementsByTagName("div");
           for (var i = 0; i < divArray.length; i++) {
               divArray[i].onmouseover = createDivDetailOne;
               /*
                 无法用原始的div绑定鼠标移走的事件,因为明细的div的宽度长度都要大于原始div,
                 这样原始的div就被覆盖了,此时会自动触发onmouseout事件
               */
               //divArray[i].onmouseout = removeDivDetail;
           }
       }
       function createDivDetailOne() {
           //保证divDetail div的唯一性
           var divDetail = document.getElementById("divDetail");
           if(divDetail)
           {
               document.body.removeChild(divDetail);
           }
           divObj = document.createElement("div");
           divObj.className = "toopTip";
           divObj.setAttribute("id", "divDetail");
           divObj.style.position = "absolute";
           divObj.style.width = "200px";
           divObj.style.height = "100px";
           var triggerObj = window.event.srcElement;
           divObj.style.top = triggerObj.offsetTop;
           divObj.style.left = triggerObj.offsetLeft;
           divObj.innerHTML = triggerObj.innerText;
           document.body.appendChild(divObj);
           //此时用于明细的div已经覆盖了原div,所以覆盖的div要进行事件的处理
           document.getElementById("divDetail").onmouseout = function() {
               divObj = this;
               if (!divObj) {
                   return;
               }
               document.body.removeChild(divObj);
           };
       }
       function removeDivDetail() {
           var divObj = document.getElementById("divDetail");
           if (!divObj) {
               return;
           }
           document.body.removeChild(divObj);
       }


       window.onload = initEvent;
    </script>

</head>
<body>
    <div id="divOne" style="background-color: Fuchsia; width: 100px; height: 100px;" >
        Hello My Js World!
    </div>
    <div id="divTwo" style="background-color: Aqua; width: 100px; height: 100px">
        Welcome to My Js World!
    </div>
    <div id="divThree" style="background-color: Gray; width: 100px; height: 100px">
        THIS IS My Js World!
    </div>
</body>
</html>
Javascript 相关文章推荐
表单元素的submit()方法和onsubmit事件应用概述
Feb 01 Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
Apr 20 Javascript
控制台报错object is not a function的解决方法
Aug 24 Javascript
jQuery链使用指南
Jan 20 Javascript
javascript基本包装类型介绍
Apr 10 Javascript
js querySelector() 使用方法
Dec 21 Javascript
package.json文件配置详解
Jun 15 Javascript
Angular.js中下拉框实现渲染html的方法
Jun 18 Javascript
Bootstrap实现下拉菜单多级联动
Nov 23 Javascript
原生js实现form表单序列化的方法
Aug 02 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
Apr 15 Javascript
使用原生JS实现滚轮翻页效果的示例代码
May 31 Javascript
js键盘上下左右键怎么触发function(实例讲解)
Dec 14 #Javascript
js 上下左右键控制焦点(示例代码)
Dec 14 #Javascript
利用JS来控制键盘的上下左右键(示例代码)
Dec 14 #Javascript
JS短路原理的应用示例 精简代码的途径
Dec 13 #Javascript
代码触发js事件(click、change)示例应用
Dec 13 #Javascript
jquery获得option的值和对option进行操作
Dec 13 #Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
Dec 13 #Javascript
You might like
mayfish 数据入库验证代码
2010/04/30 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
PHP实现删除字符串中任何字符的函数
2015/08/11 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
HTML中事件触发列表与解说
2007/07/09 Javascript
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
javascript检测是否联网的实现代码
2014/09/28 Javascript
jQuery中height()方法用法实例
2014/12/24 Javascript
JavaScript中的对象序列化介绍
2014/12/30 Javascript
js判断浏览器版本以及浏览器内核的方法
2015/01/20 Javascript
JS组件Bootstrap导航条使用方法详解
2016/04/29 Javascript
详解Vue.js 2.0 如何使用axios
2017/04/21 Javascript
基于JavaScript实现五子棋游戏
2020/08/26 Javascript
详解Vue用cmd创建项目
2019/02/12 Javascript
vue配置nprogress实现页面顶部进度条
2019/09/21 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
Element Popover 弹出框的使用示例
2020/07/26 Javascript
微信小程序实现点击生成随机验证码
2020/09/09 Javascript
vue实现下拉菜单树
2020/10/22 Javascript
全面解析Vue中的$nextTick
2020/12/24 Vue.js
[01:00:30]TFT vs VGJ.T Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
Python读取本地文件并解析网页元素的方法
2018/05/21 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
python logging模块的使用总结
2019/07/09 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
美国受欢迎的眼影品牌:BH Cosmetics
2016/10/25 全球购物
企业演讲比赛主持词
2014/03/18 职场文书
公路绿化方案
2014/05/12 职场文书
党员演讲稿
2014/09/04 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
2015年班级工作总结范文
2015/04/03 职场文书
小学生大队委竞选稿
2015/11/20 职场文书
spring IOC容器的Bean管理XML自动装配过程
2022/05/30 Java/Android