鼠标移到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 相关文章推荐
javascript不可用的问题探究
Oct 01 Javascript
div模拟滚动条效果示例代码
Oct 16 Javascript
使用jQuery将多条数据插入模态框的实现代码
Oct 08 Javascript
深入浅析JavaScript中的RegExp对象
Sep 18 Javascript
微信小程序用户自定义模版用法实例分析
Nov 28 Javascript
jQuery实现点击图标div循环放大缩小功能
Sep 30 jQuery
angularJs中ng-model-options设置数据同步的方法
Sep 30 Javascript
node中使用es6/7/8(支持性与性能)
Mar 28 Javascript
详解服务端预渲染之Nuxt(介绍篇)
Apr 07 Javascript
对layer弹出框中icon数字参数的说明介绍
Sep 04 Javascript
JS模拟浏览器实现全局搜索功能
Sep 11 Javascript
js利用拖放实现添加删除
Aug 27 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
php获取微信基础接口凭证Access_token
2018/08/23 PHP
PHP保留两位小数的几种方法
2019/07/24 PHP
jQuery之网页换肤实现代码
2011/04/30 Javascript
修复ie8&amp;chrome下window的resize事件多次执行
2011/10/20 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
2013/11/21 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
2014/09/02 Javascript
做web开发 先学JavaScript
2014/12/12 Javascript
JavaScript中的操作符==与===介绍
2014/12/31 Javascript
JavaScript学习小结(一)——JavaScript入门基础
2015/09/02 Javascript
跟我学习javascript的垃圾回收机制与内存管理
2015/11/23 Javascript
Vuejs第一篇之入门教程详解(单向绑定、双向绑定、列表渲染、响应函数)
2016/09/09 Javascript
原生js实现查询天气小应用
2016/12/09 Javascript
使用UrlConnection实现后台模拟http请求的简单实例
2017/01/04 Javascript
AngularJS ui-router (嵌套路由)实例
2017/03/10 Javascript
AngularJS $http模块POST请求实现
2017/04/08 Javascript
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
2017/09/15 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
vue项目创建并引入饿了么elementUI组件的步骤
2019/04/11 Javascript
vuex + keep-alive实现tab标签页面缓存功能
2019/10/17 Javascript
vue组件创建的三种方式小结
2020/02/03 Javascript
使用Webpack 搭建 Vue3 开发环境过程详解
2020/07/28 Javascript
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
Python中声明只包含一个元素的元组数据方法
2014/08/25 Python
Python中threading模块join函数用法实例分析
2015/06/04 Python
python自动zip压缩目录的方法
2015/06/28 Python
Python Scrapy框架第一个入门程序示例
2020/02/05 Python
python应用Axes3D绘图(批量梯度下降算法)
2020/03/25 Python
英国复古皮包品牌:Beara Beara
2018/07/18 全球购物
省级四好少年事迹材料
2014/01/25 职场文书
党校毕业心得体会
2014/09/13 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
2016年春节慰问信息
2015/03/25 职场文书
单位工资证明范本
2015/06/12 职场文书
外出听课学习心得体会
2016/01/15 职场文书
2019毕业典礼主持词!
2019/07/05 职场文书