首先不同浏览器中event位置属性的分析:
1. IE的event.x,event.y是以事件触发元素的父元素外界为参考点(不包括滚动距离)
2. Firefox的event.pageX,event.pageY是以body元素为参考点(包括滚动距离)
3. event.clientX,event.clientY以浏览器左上角为参考点(不包括滚动距离)
4. IE的event.offsetX,event.offsetY和Firefox的event.layerX,event.layerY以事件触发元素内界的左上角为参考点(包括滚动距离,当有边框时,可能出现负数)
然后是DOM对象高度属性分析
1. scrollHeight: 获取对象的滚动高度
2. scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
3. scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
4. scrollWidth:获取对象的滚动宽度
5. offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
6. offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
7. offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
有了以上分析,写出两个取位置的函数 复制代码 代码如下:
// 取X轴位置
function mouseX(evt) {
// firefox
if (evt.pageX) return evt.pageX;
// IE
else if (evt.clientX)
return evt.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
else return null;
}
// 取Y轴位置
function mouseY(evt) {
// firefox
if (evt.pageY) return evt.pageY;
// IE
else if (evt.clientY)
return evt.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
else return null;
}
获取Html控件的绝对位置的两种方法 复制代码 代码如下:
function getAbsPoint(e){
var x = e.offsetLeft, y = e.offsetTop;
while (e = e.offsetParent) {
x += e.offsetLeft;
y += e.offsetTop;
}
alert("x:" + x + "," + "y:" + y);
}
function getAbsPoint(obj){
var x, y;
oRect = obj.getBoundingClientRect();
x = oRect.left
y = oRect.top
alert("(" + x + "," + y + ")")
}
注意
document.body.scrollLeft,document.body.scrollTop只用于IE6以前的版本,在IE6中,对没有宣告 DOCTYPE,或者宣告的是transitional DOCTYPE,那么IE6将使用document.documentElement.scrollLeft 来获取鼠标的绝对位置
相关推荐:
SEO新人必读:从零开始SEO的核心技巧与实践指南,网站邮件推广设计
360排名优化价格:打造高效网络营销的制胜法宝,ai换脸刘浩存自wei
ChatGPT403:引领人工智能新时代,颠覆你的工作与生活方式,ai nak
OpenAI推出的GPT-4Turbo大幅降低了AI应用成本,推动了AI技术的普及化,ai*版
SEO详解:如何优化你的网站提升排名,获得更多流量,伊春湖南网站优化推广
AI助手Stut:智能时代的创新引擎,开启未来工作新篇章,ai对ai的格斗游戏
SEO地位:如何提升你的网站排名与曝光度,抢占市场先机,微营销网络推广
SEO应该如何提升网站流量与排名?揭秘成功的SEO策略,肺炎疫苗推广营销
GoogleSEO打满分自然流量会高吗?揭开SEO优化的真相,猪插画ai
SEO工装裤-打造时尚与实用兼备的工作利器,ai画中国爸爸辅导孩子写作业
SEO功能:助力网站流量提升与品牌曝光,天津公司网站建设与维护
ChatGPT显示503:如何应对AI服务不可用的困境?,ai宝贝宝贝
SEO观看:如何通过优化提升您的网站流量和品牌影响力,龙里网络营销推广
为什么行业都要做seo,为什么要做seo ,ai明信片
ChatGPT页面不自动显示最新消息:如何解决这一困扰,提升使用体验?,斑马ai幼儿百度云网盘
用AI写文章,释放你的创作潜力!
360AI写作怎样?助力创作的新风尚,ai到访
ChatGPT回答是空白的背后,究竟隐藏着什么秘密?,如何用ai写作来赚钱
seo需要买什么,seo需要考虑什么 ,ai做表头
OpenArtAI如何进入:数字艺术的未来之门,分析海报ai
SEO关键词的选择步骤:让你的网站在搜索引擎中脱颖而出,ai书法化
AI仿写文章:开启内容创作新纪元
SEO客服:如何提升客户体验与业务转化的双赢策略,鄂州网站建设公司教程
seo网站代码是什么,网站专业术语中seo意思是什么 ,拟人ai制作
ChatGPT无法加载?检查您的网络设置并尝试重启,轻松解决常见问题!,ai招生广告设计
SEO范例:如何通过优化提升网站流量,获取更多商机,广州抖音seo搜索广告
SEO优:让网站流量和排名实现飞跃的秘诀,大理哪有企业网站建设
AI提供的阅读书目对学生的专业知识有多大帮助,沃奇ai
ChatGPT:如果您正在使用VPN,这些技巧您一定要知道!,AI换脸*H
如何查文章AI率?全面解析AI文章检测工具及技巧
ChatGPT无法加载?检查您的网络设置并尝试重启Chat,ai写作怎么写作文的
【SEO优化全攻略】提升网站流量的终极秘籍,带你轻松玩转搜索引擎优化!,金融网站推广维护
软件我在AI:改变未来的智能助手
seo涉及什么内容,seo主要包括 ,法医使用ai
ZBlog:开启你的个人网站新时代,轻松搭建与管理,二手手机营销推广方案
seo软文有什么作用,seo文案是什么 ,斐乐Ai测评问题
自动生成文章的AI软件,助力内容创作的未来
自动AI写文章:轻松创作时代的全新利器
为什么做seo的人很少,为了什么做seo ,ai不负你
SEM有哪几个平台?数字营销的多元选择,AI怎么取消移动间距
二次创作的魅力与潜力:创意无限的数字时代,天长外贸网站建设
SEO费用如何根据预算选择最合适的SEO服务,营销类推广网站
seo类文章是什么,seo技术文章 ,ai3.5-ai聊天
seo软件工具,seo软件是什么 ,AI妆容
SEO优化攻略:如何通过精准策略提升网站排名与流量,aI ow翻译
为什么选择老域名工具?提升网站SEO与品牌影响力的秘密武器,软文与seo文章区别
AI免费生成文字,打造创作新时代
用AI创作的文章算原创吗?深度背后的逻辑与意义
AI一键生成文章在线:提升创作效率,改变写作方式
seo稿件是什么意思,seo文章写作要求 ,ai写作未来展望和展望