js获取页面元素位置函数(浏览器兼容)

DDR为什么需要DQS信号? 本文根据相关书籍和个人经验,谈了一下对DDR中DQS信号作用的理解 阅读详情

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>a</title>
<script>
function getElementPos(elementId) {
var ua = navigator.userAgent.toLowerCase();
var isOpera = (ua.indexOf('opera') != -1);
var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera spoof
var el = document.getElementById(elementId);
if(el.parentNode === null || el.style.display == 'none') {
   return false;
}    
var parent = null;
var pos = [];   
var box;   
if(el.getBoundingClientRect)    //IE
{       
   box = el.getBoundingClientRect();
   var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
   var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
   return {x:box.left + scrollLeft, y:box.top + scrollTop};
}else if(document.getBoxObjectFor)    // gecko  
{
   box = document.getBoxObjectFor(el);
   var borderLeft = (el.style.borderLeftWidth)?parseInt(el.style.borderLeftWidth):0;
   var borderTop = (el.style.borderTopWidth)?parseInt(el.style.borderTopWidth):0;
   pos = [box.x - borderLeft, box.y - borderTop];
} else    // safari & opera  
{
   pos = [el.offsetLeft, el.offsetTop];
   parent = el.offsetParent;   
   if (parent != el) {
    while (parent) {
   pos[0] += parent.offsetLeft;
   pos[1] += parent.offsetTop;
   parent = parent.offsetParent;
    }
   } 
   if (ua.indexOf('opera') != -1 || ( ua.indexOf('safari') != -1 && el.style.position == 'absolute' )) {
    pos[0] -= document.body.offsetLeft;
    pos[1] -= document.body.offsetTop;       
   }  
}            
if (el.parentNode) {
   parent = el.parentNode;
    } else {
   parent = null;
    }
while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML') { // account for any scrolled ancestors
   pos[0] -= parent.scrollLeft;
   pos[1] -= parent.scrollTop;
   if (parent.parentNode) {
    parent = parent.parentNode;
   } else {
    parent = null;
   }
}
return {x:pos[0], y:pos[1]};
}

function get(divId)
{
   var pos=getElementPos(divId);
   alert("距左边距离"+ pos.x +",距上边距离"+pos.y);

}

</script>
</head>

<body>
<table width="100%"><tr>
   <td><a href="#" id="ccc">aaaa</a></td>
   <td><input type="button" onClick="get('ccc');" value="获取坐标"> </td>
   <td><div id="bbbb" style="background-color:#CCCCCC">层2</div></td>
</tr></table>
<table width="100%"><tr>
   <td>aaaa</td>
   <td><input type="button" onClick="get('aaa');" value="获取坐标"> </td>
   <td><div id="aaa" style="background-color:#CCCCCC">层1</div></td>
</tr></table>
</body>
</html>

AWR1642+DCA1000EVM 不使用mmWave Studio软件采集原始ADC数据 Timeout问题汇总 DCA1000 EVM Timeout问题汇总 阅读详情

相关推荐

达梦数据守护集群监视器详解与应用指南

主库/备库:承担读写和只读服务的数据节点Redo 日志:记录数据库变更的核心日志Redo 日志传输:主备库间的日志同步机制Redo 日志重演:备库重做日志的应用过程守护进程 (dmwatcher):实例级别的监控和管理组件监视器 (dmmonitor):集群级别的监控和管理工具监视器作为数据守护系统的重要组成部分,提供了集群监控、故障管理和状态确认等关键功能。达梦数据守护集群监视器是维护数据库高可用性的关键工具。

huanhuanzhou blog 1058

用Javascript获取页面元素的位置

用Javascript获取页面元素的位置 作者: 阮一峰 日期: 2009年9月14日 制作网页的过程中,你有时候需要知道某个元素在网页上的确切位置。 下面的教程总结了Javascript在网页定位方面的相关知识。 一、网页的大小和浏览器窗口的大小 首先,要明确两个基本概念。 一张网页的全部面积,就是它的大小。通常情况下,网页的大小由内容和CSS样...

sinoalex 1299

如何实现VMware虚拟机上的ubuntu与windows主机共享文件夹

windows主机部分   在硬盘上任意位置新建文件夹,此处命名为Share,实际上随意。 接下来右键属性,操作如下系列图所示: 在硬盘上任意位置新建文件夹,此处命名为Share,实际上随意。 成功修改后,显示如下界面: VMware部分 ubuntu在关机状态下,点击“编辑虚拟机设置” 接下来,开启ubuntu系统,在终端输入: ·· vmware-hgfsclient ·· 将会显示如下画面,但是此时你可能找不到 /mnt/hgfs 这个路径,如果找不到该路径,则需要在虚拟

Mr.Sliver的博客 8216

js获取页面元素位置函数

 用Javascript获取指定页面元素的位置是一个非常常见的需求,本文介绍的函数能够准确返回一个元素相对于整个文档左上角的坐标,即元素的 top 、left 的位置,而且能够兼容浏览器,相信对新手非常有用。function getElementPos(elementId) { var ua = navigator.userAgent.toLowerCase(); var isOpera =

溺水的鱼 - Later equals never. 1006

AI 赋能测试全生命周期:多 Agent 协同的自动化提效方案

本文提出了一种基于Coze平台的多Agent协同测试解决方案,旨在解决软件测试中PRD解析不清晰、测试点覆盖不全、用例编写效率低、代码生成耗时等痛点。通过PRD优化、测试点生成、测试用例生成和单元测试框架生成四个Agent的协同工作,结合Cursor工具实现从需求到代码的全链路自动化。以电商平台登录模块为例,展示了从模糊PRD到标准化测试用例和可执行Java单元测试代码的完整转化流程。该方案通过AI赋能显著提升测试效率,减少人工干预,实现测试覆盖率≥95%,为快速迭代的软件研发提供了高效的测试自动化支持。

QINJIEEE的博客 1101

STM32与HT7038的高精度电能计量系统设计与实现

本文详细介绍了基于STM32微控制器与HT7038三相电能计量芯片的高精度电能计量系统设计与实现。文章从项目选型出发,深入剖析了硬件电路设计、SPI驱动开发、芯片校准及系统集成等关键环节,为智能电表、能源监控等应用提供了高性价比且稳定的国产化解决方案。

pytorch8learner的博客 389

js获取窗口可见宽度高度(转载)

关于获取各种浏览器可见窗口大小的一点点研究。 在我本地测试当中: 在IE、FireFox、Opera下都可以使用 document.body.clientWidth document.body.clientHeight 即可获得,很简单,很方便。 而在公司项目当中: Opera仍然使用 document.body.clientWidth document.body.clientHeight 可是I...

weixin_30708329的博客 102

YOLOv11改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进

如今各种网络模型更新迭代越来越快,计算机视觉相关的文章也越来越多,多到一些普通,通用的改进点无法达到发表的要求。本专栏正是解决这个问题!如何寻找创新点?为什么要使用这个模块?如何才能提升模型的精度?这是贯穿我们研究始终的问题。创新点在这个专栏中我已经整理好了,这已经省去了大部分时间,但是当我们使用这些新的模块去优化已有的模型,如何才能提升模型的精度,才是我们要达到的最终目标。当然我们可以使用传统的A+B+C的方法去堆积模块,然后是进行大量的实验去排列组合以实现最终的精度提升,这无可厚非。

Limiiiing的博客 6万+

js获取窗口宽度高度

关于获取各种浏览器可见窗口大小的一点点研究。 在我本地测试当中: 在IE、FireFox、Opera下都可以使用 document.body.clientWidth document.body.clientHeight 即可获得,很简单,很方便。 而在公司项目当中: Opera仍然使用 document.body.clientWidth document.body.clientH...

alvinqq 141

FISCO BCOS 三、多群组部署以及新节点加入群组

本章主要以星形组网和并行多组组网拓扑为例,指导您了解如下内容:了解如何使用创建多群组区块链安装包;了解创建的多群组区块链安装包目录组织形式;学习如何启动该区块链节点,并通过日志查看各群组共识状态;学习如何向各群组发送交易,并通过日志查看群组出块状态;了解群组内节点管理,包括节点入网、退网等;了解如何新建群组。

qq_63235624的博客 2919

CST与MATLAB连接设置

打开MATLAB,点击"Set Path"按钮,然后点击"Add Folder"。在CST中,点击"Options"菜单,然后选择"Advanced"选项。在弹出的对话框中,点击"COMSOL"选项卡,并确保"Enable COMSOL"复选框被选中。通过上述步骤和示例代码,你可以开始使用MATLAB与CST进行集成,并根据你的具体需求进行进一步的开发和应用。通过这个简单的示例,你可以开始在MATLAB中与CST进行交互,并根据你的需求进行更复杂的操作,如参数化仿真、优化和数据处理等。

TechPulseZ的博客 1966

javascript获得DOM元素X,Y坐标的函数

<br /> /* 根据id判断位置,返回X,Y轴的坐标 */ function getElementPos(elementId){ var ua = navigator.userAgent.toLowerCase(); var isOpera = (ua.indexOf('opera') != -1); var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera

学习笔记 7138

【CAN总线测试】——通讯相关诊断测试

本章主要介绍通讯相关诊断测试用例设计

LOVE135149的博客 1813

收藏的几个js方法

12//说明:用Javascript获取指定页面元素的位置3functiongetElementPos(elementId){4varua=navigator.userAgent.toLowerCase();5varisOpera=(ua.indexOf('opera')!=-1);6varisIE=...

weixin_30632089的博客 65

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

js 动态加事件代码

<script type="text/javascript"> ///获取绝对位置 function getPostion(e) { var t=e.offsetTop; var l=e.offsetLeft; var ee=e; while(ee=ee.offsetPare...

weixin_30782293的博客 62

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

css坐标

这几个属性都是IE火狐完全兼容的,不多说,看我测试结果便知: 【源码如下】 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> http://www.w3.org/1999/xhtml">

745

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

js获取div的坐标

html中最常使用的控件就是div了,那么如何获取div的坐标呢? 如何方法可以实现. Js代码 /*** *获取div的坐标 *@paramdivObj *@returns{{width:number,height:number,left:*,top:Window}} */ com.whuang...

weixin_33775572的博客 318

获取坐标封装 getPos

function getPos(ev) { var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; var scrollLeft = document.documentElement.scrollLeft || document.body.scrollLeft; ...

weixin_33932129的博客 112

javascript 封装函数,获得 高度及左边距

javascript 封装函数,获得 高度及左边距 #div1 { width:1000px; height:500px; background-color:#7A7A7A; marg in:0px auto;padding-top:200px;} #div2 { width:800px; height:300px; background-color:#F54F52;margin:0px aut

骑着猪猪去拍拖 432

vue 获取元素在浏览器的位置_前端开发JS获取页面元素的位置

1.网页的大小和浏览器窗口的大小一张网页的全部面积,就是它的大小。通常情况下,网页的大小由内容和document元素的clientHeight和clientWidth属性,就代表了网页的大小。function getViewport(){if (document.compatMode == “BackCompat”){return {width: document.body.clientWidth...

weixin_39517868的博客 3973
上一篇: mysql 处理时间函数
下一篇: 实现php 二级域名无限解析 自己实践+看别人文章
libailin
博客等级 码龄19年 5粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值