多浏览器兼容的获取元素和鼠标的位置的js代码


Posted in Javascript onDecember 15, 2009
//获取元素的位置 
function getLeft(obj) { 
if (obj == null) 
return null; 
var mendingObj = obj; 
var mendingLeft = mendingObj.offsetLeft; 
while (mendingObj != null && mendingObj.offsetParent != null && mendingObj.offsetParent.tagName != "BODY") { 
mendingLeft = mendingLeft + mendingObj.offsetParent.offsetLeft; 
mendingObj = mendingObj.offsetParent; 
} return mendingLeft; 
}; 
function getTop(obj) { 
if (obj == null) 
return null; 
var mendingObj = obj; 
var mendingTop = mendingObj.offsetTop; 
while (mendingObj != null && mendingObj.offsetParent != null && mendingObj.offsetParent.tagName != "BODY") { 
mendingTop = mendingTop + mendingObj.offsetParent.offsetTop; 
mendingObj = mendingObj.offsetParent; 
} 
return mendingTop; 
}; 
//获取鼠标的位置 
function getMousePosition(event) { 
var position = { 
MouseX: 0, 
MouseY: 0 
} 
if (event.pageX != undefined) { 
position.MouseX = event.pageX; 
position.MouseY = event.pageY; 
} 
else { 
var target = EventUtil.getTarget(event); 
position.MouseX = event.offsetX + getLeft(target); 
position.MouseY = event.offsetY + getTop(target); 
} 
return position;
Javascript 相关文章推荐
使用jquery给input和textarea设定ie中的focus
May 29 Javascript
使用jQuery validate 验证注册表单实例演示
Mar 25 Javascript
探讨JavaScript中声明全局变量三种方式的异同
Dec 03 Javascript
用jquery的方法制作一个简单的导航栏
Jun 23 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
Jan 27 Javascript
jQuery控制网页打印指定区域的方法
Apr 07 Javascript
js检测判断日期大于多少天的方法
May 04 Javascript
jQuery Easyui Tabs扩展根据自定义属性打开页签
Aug 15 Javascript
JS简单实现滑动加载数据的方法示例
Oct 18 Javascript
vue实现导航栏效果(选中状态刷新不消失)
Dec 13 Javascript
jQuery带控制按钮轮播图插件
Jul 31 jQuery
讨论javascript(一)工厂方式 js面象对象的定义方法
Dec 15 #Javascript
查询绑定数据岛的表格中的文本并修改显示方式的js代码
Dec 15 #Javascript
jquery自动完成插件(autocomplete)应用之PHP版
Dec 15 #Javascript
Javascript attachEvent传递参数的办法
Dec 14 #Javascript
firefox下对ajax的onreadystatechange的支持情况分析
Dec 14 #Javascript
javascript document.execCommand() 常用解析
Dec 14 #Javascript
JQuery Tips(3) 关于$()包装集内元素的改变
Dec 14 #Javascript
You might like
基于PHP文件操作的详细诠释
2013/06/21 PHP
Codeigniter整合Tank Auth权限类库详解
2014/06/12 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
php根据年月获取当月天数及日期数组的方法
2016/11/30 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
2018/11/29 PHP
php 中self,this的区别和操作方法实例分析
2019/11/04 PHP
JavaScript游戏之是男人就下100层代码打包
2010/11/08 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
2013/04/26 Javascript
js window.onload 加载多个函数和追加函数详解
2014/01/08 Javascript
jQuery mobile 移动web(4)
2015/12/20 Javascript
在js中做数字字符串补0(js补零)
2017/03/25 Javascript
vue绑定设置属性的多种方式(5)
2017/08/16 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
2020/03/23 Javascript
浅谈JavaScript节流和防抖函数
2020/08/25 Javascript
python获取文件版本信息、公司名和产品名的方法
2014/10/05 Python
Python实现爬取逐浪小说的方法
2015/07/07 Python
Python学习小技巧之列表项的排序
2017/05/20 Python
python递归打印某个目录的内容(实例讲解)
2017/08/30 Python
python机器学习之神经网络(三)
2017/12/20 Python
Python实现base64编码的图片保存到本地功能示例
2018/06/22 Python
Python UnboundLocalError和NameError错误根源案例解析
2018/10/31 Python
python日志logging模块使用方法分析
2019/05/23 Python
pytorch 预训练层的使用方法
2019/08/20 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
汉森批发:Hansen Wholesale
2018/05/24 全球购物
Strawberrynet草莓网新加坡站:护肤、彩妆、香水及美发产品
2018/08/31 全球购物
解释一下ruby中的特殊方法与特殊类
2013/02/26 面试题
学生喝酒检讨书
2014/02/06 职场文书
大学活动总结模板
2014/07/10 职场文书
依法行政工作汇报材料
2014/10/28 职场文书
我在伊朗长大观后感
2015/06/16 职场文书
2019年“我为祖国点赞”演讲稿(3篇)
2019/09/26 职场文书
浅谈MySQL之select优化方案
2021/08/07 MySQL
Python IO文件管理的具体使用
2022/03/20 Python