HTML之元素相对页面(视口)左上角的坐标

ANPC三电平拓扑:两种调制方式解析 ANPC结构是基于“I”型NPC结构(下面讲NPC如不特殊说明,均指的是“I”型结构NPC)发展出来的一种改进型。我们在讲NPC结构的时候会谈到他的一个缺点就是损耗分布不均匀,会导致温升不均衡,进而限制模块的功率输出能力。而ANPC结构由于多了两个开关管以及相应的两个中性点换流回路(如下图),可以更加灵活任意的配置开关管可以使损耗没有那么的不均衡,从而能一定程度上提高模块的输出功率。ANPC拓扑结构图以及增加的环流回路。 阅读详情

一. 绝对位置

  • 网页元素的绝对位置,指该元素的左上角相对于整张网页左上角的坐标。无论网页滚动条如何滚动,它都是不会变化的。
  • // 获取元素的绝对位置坐标(相对于页面左上角)
    function getElementPagePosition(element){
      //计算x坐标
      var actualLeft = element.offsetLeft;
      var current = element.offsetParent;
      while (current !== null){
        actualLeft += current.offsetLeft;
        current = current.offsetParent;
      }
      //计算y坐标
      var actualTop = element.offsetTop;
      var current = element.offsetParent;
      while (current !== null){
        actualTop += (current.offsetTop+current.clientTop);
        current = current.offsetParent;
      }
      //返回结果
      return {x: actualLeft, y: actualTop}
    }
    
  • 使用例子:
    var rect = getElementPagePosition(element);
    // 输出坐标
    console.log("元素的左上角相对于视口的坐标:", rect.x, rect.y);
    //滚动到该元素 (滚动到使该元素位置 x y 贴紧视口左上角)
    window.scrollTo({
     left: rect.x,
     top: rect.y,
     behavior:"smooth"
     });
    

二. 相对位置

  • 网页元素的相对位置,是指元素左上角相对于浏览器窗口可视区域(视区:viewport)左上角的坐标。它会随着滚动条滚动而变化。
  • // 获取元素的绝对位置坐标(像对于浏览器视区左上角)
    function getElementViewPosition(element){
      //计算x坐标
      var actualLeft = element.offsetLeft;
      var current = element.offsetParent;
      while (current !== null){
        actualLeft +=  (current.offsetLeft+current.clientLeft);
        current = current.offsetParent;
      }
      if (document.compatMode == "BackCompat"){
        var elementScrollLeft=document.body.scrollLeft;
      } else {
        var elementScrollLeft=document.documentElement.scrollLeft;
      }
      var left = actualLeft - elementScrollLeft;
      //计算y坐标
      var actualTop = element.offsetTop;
      var current = element.offsetParent;
      while (current !== null){
        actualTop += (current.offsetTop+current.clientTop);
        current = current.offsetParent;
      }
      if (document.compatMode == "BackCompat"){
        var elementScrollTop=document.body.scrollTop;
      } else {
        var elementScrollTop=document.documentElement.scrollTop;
      }
      var right = actualTop-elementScrollTop;
      //返回结果
      return {x: left, y: right}
    }
    
手把手教你学simulink(41.4)--逆变器电场景示例:基于Simulink的主从控制的多逆变器协同控制(Multi-Inverter Coordinated Control) 需求分析在现代电力系统中,分布式发电和储能系统的广泛应用使得多个逆变器并联运行成为常见的应用场景。为了确保多个逆变器之间的协同工作,实现系统的稳定性和高效性,通常采用主从控制(Master-Slave Control)策略。主从控制通过一个主控制器(Master)来协调多个从控制器(Slave),确保所有逆变器的输出电压、频率和功率分配符合预期目标。本项目将基于Simulink平台,开发一个多逆变器协同控制系统,采用主从控制策略,实现对多个逆变器的精确控制和优化。 阅读详情

相关推荐

uniapp运行钉钉小程序

因项目原因,公司需要在钉钉里面开发小程序。之前用uniapp开发过app,H5,小程序。还真没尝试过钉钉小程序,今天就简单的记录下uniapp运行钉钉小程序中的过程。

YL 2919

javascript获取元素在浏览器中工作区域的左、右、上、下距离,或带滚动条的元素在页面中的大小

/html代码部分。

cdcdhj的博客 1057

5分钟快速验证lvgl界面:VScode模拟器极简配置法(免环境变量版)

本文介绍了一种5分钟快速验证LVGL界面的极简配置方法,使用VSCode模拟器免环境变量配置,适合UI设计师和产品经理快速预览界面效果。通过预编译的SDL2库和配置好的VSCode工程模板,实现开箱即用的LVGL界面验证,大幅提升工作效率。

weixin_30790841的博客 314

获取html元素的屏幕坐标,Javascript 获取页面元素相对于电脑屏幕的坐标

坚持分享不容,如果我的分享对您有帮助,请给予。

xinshou_jiaoming的专栏 2387

Proteus仿真AT89C51驱动DHT11:温湿度数据采集与LCD1602显示的5个调试坑点总结

本文总结了在Proteus仿真环境下使用AT89C51驱动DHT11温湿度传感器并通过LCD1602显示的5个常见调试坑点,包括DHT11时序问题、LCD1602初始化错误、数据校验失败、仿真特有差异及系统稳定性问题,提供了详细的解决方案和优化代码示例,帮助开发者高效完成温湿度采集项目。

weixin_30335575的博客 355

【Cadence】Virtuoso@LayoutXL 差分电路版图同步修改

对于差分电路,器件和部分走线通常是对称的,只需要画一半,另一半通过镜像操作完成。因此,需要对差分电路进行同步的修改,保证电路的差分对称性和正确的连接关系。然而,通常版图会经过多次修改,修改的部分可能在镜像的时候被遗漏。左边画了金属块,右边也出现了同步出现了金属块。进入group会有同步复制的提示。

乾巽的博客 3046

HTML+CSS基础梳理

HTML+CSS基础梳理

MengZD的博客 1201

Linux环境下OpenSSH升级到 OpenSSH_9.8p1(内置保姆级教程并包含openssl升级过程)

2024年7月1日接到安全部门同事邮件通知,目前生产环境及测试环境服务器Openssh存在远程代码执行漏洞(CVE-2024-6387),漏洞等级高,且攻击者可以成功利用该漏洞获得远程root shell最高权限从而执行任意代码及命令,主要受影响版本为8.5p1

菜鸟运维升级之路 2万+

html页面视口,web移动端---视口viewport

视口viewport视口viewport: 简单点说就是用来预览网页的窗口。又分为以下两大类:pc端视口:就是浏览器的可视区域。移动端视口:当前设备的屏幕区域。一、 pc端视口:1.在PC端,浏览器窗口大小会影响HTML大小,进而影响网页布局2. 在PC端视口其实就是我们浏览器大小(在PC端,视口可以影响HTML元素大小)二、移动端视口:1.视觉视口visual viewport :眼睛看...

weixin_33117093的博客 1340

记录LeNet的硬件加速器设计(一)

LeNet的硬件加速器设计实现。

2301_81029398的博客 3543

MFC Windows 程序设计[122]之树形下拉列表框(附源码)

MFC是微软公司提供的一个类库(class libraries),用以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。有很多初学MFC的小伙伴们都觉得MFC比较难学,看书吧,看了就忘了,网上的一些教程又是写的含糊不清,故而学习起来很吃力...... 故此,本专栏亲自研究,实践,由易到难,层层深入,将调试过程中所遭所遇进行详细讲解,注意事项进行一一列举,希望能够帮助到各位初学MFC的小伙伴,避免走弯路,费时费力。.........

hnjzfwy的博客 458

38.给定一个元素获取它对于视口的坐标

原文链接:http://caibaojian.com/getelementposition.htmloffsetWidthclientWidthscrollWidthoffsetHeightclientHeightscrollHeightoffsetLeftclientLeftscrollLeftoffsetTopclientTopscrollTop为了理解这些属性,我们需要知道HTML元素的实际...

qq_36367494的博客 886

红队内网攻防渗透:内网渗透之内网对抗:实战项目&VPC1打靶&PHP-RCE&三层代理路由&防火墙上线&密码喷射&域控提权

上面已经抓取到了密码,但是我们通过拓扑分析看,要想上线win10只能通过正向shell,因为win7的防火墙是开的,win10反向主动连接肯定入站规则拦截,而win10自己没有开防火墙,所以win7主动正向连接就可以上线。win7开启了防火墙,入站规则肯定是会拦截我们的请求的,所以我们需要反向上线,让win7主动来连接我们。这里扫描发现是存在ms17010漏洞的,但是想上线192.168.2.142的话,我们没有路由是上线不了的,这里有两种办法:一种msf直接生成后门,另一种cs移植后门到msf。

HACKONE的博客 909

响应式布局——视口viewport和常用单位

了解一下响应式布局视口和视口常用单位

weixin_51081257的博客 3622

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

svg html 坐标转换,SVG视口,坐标和形状

SVG是什么可缩放矢量图形(Scalable Vector Graphics),一种用来描述二位矢量图形的XML标记语言SVG视口viewportSVG可见区域的大小,也叫画布大小//一个栗子单位image.pngviewBoxSVG像是像是显示器的屏幕,xiewBox就像是截图的那个框,显示的效果就是将框中的内容全屏的显示在屏幕上.//栗子viewBox="0,0,50,30" //x,y,w...

weixin_36365795的博客 356

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

如何获取 HTML 元素相对于浏览器窗口的位置?

大家好,今天我们来聊一聊前端开发中一个常见但又非常实用的小技巧:如何获取 HTML 元素相对于浏览器窗口的位置。不管你是新手还是有经验的开发者,这个技巧在处理布局调整、动画效果或滚动事件时都能派上大用场。接下来,我们一起来看看几种获取元素位置的方法吧!使用 getBoundingClientRect 方法getBoundingClientRect 方法可以获取元素相对于视口(viewport)的大...

前端达人 1269

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

html5计算屏幕宽度参数获取偏移值,页面元素坐标和偏移(clientX/pageX/screenX/layerX/offsetWidth/scrollWidth/clientWidth等)相关整理...

转自这里:http://www.cnblogs.com/skylar/p/4121508.html 顺便补充点鼠标事件都是在特定位置发生的,我们可以通过event事件对象的各种属性来获得事件发生的坐标位置,有相对于视口的,有相对于整个文档的,同样页面元素的位置也有相对视口的,也有滚动后的,这些都比较容易混淆,所以整理在这里,备忘,待查。1.客户区坐标位置(clientX/clientY)我们...

weixin_39733232的博客 815

html获取元素的坐标

原文:http://www.blogjava.net/sealyu/archive/2009/02/24/256449.html 使用HTML元素的style.left,style.top,style.width,style.height以及width,height属性,都不能获得元素的真正位置与大小,这些属性取出来的都是原来的设置值,例如,那么通过document.getEleme

这波不亏 4970

html中偏移量和坐标,页面元素坐标和偏移

鼠标事件1. 客户区坐标位置(clientX/clientY)通过event事件对象的clientX/clientY属性,获得事件发生时鼠标指针在视口的水平垂直坐标2. 屏幕坐标位置(screenX/screenY)通过event事件对象的clientX/clientY属性,获得事件发生时鼠标指针相对于整个屏幕的坐标信息function showCoords(event){var input1 =...

weixin_39877805的博客 1148

获取html元素的位置,如何获取页面元素的位置

背景:最近在商品列表项目迭代中,需要在商品列表底部增加一个分销商品广告位,另外接收到一个产品曝光度的埋点需求,需要知道产品出现在用户视口后在进行数据统计!基于虚拟 DOM 数据驱动的思想,最不提倡的就是 jquery 时代的 DOM 操作!但是在目前一些复杂的页面中经常还是会用 javascript 处理一些 DOM 元素,实现一些动态效果;最常见的是用到一些元素的位置和尺寸的计算,但是其中浏览器...

weixin_28727943的博客 2611

Excalibur游戏引擎中的屏幕与视口系统详解

在游戏开发中,屏幕显示和视口管理是基础但至关重要的环节。Excalibur游戏引擎提供了一套完善的屏幕与视口管理系统,帮助开发者轻松处理不同分辨率适配、HiDPI显示以及坐标转换等问题。本文将深入解析Excalibur中的屏幕与视口系统的工作原理和使用方法。 ## 基础屏幕设置 对于大多数游戏来说,设置一个固定的宽度和高度就足够了。这是Excalibur默认的显示模式(DisplayMode.

gitblog_01135的博客 539

获取html元素所在页面的坐标

function findPosition(oElement) { var x2 = 0; var y2 = 0; var width = oElement.offsetWidth; var height = oElement.offsetHeight; ...

XIAO1hao11111的博客 588

HTML 鼠标坐标和元素坐标

在这一篇文章中,将会介绍鼠标坐标、元素坐标以及鼠标在指定元素内的坐标。 1. 鼠标坐标 在触发鼠标相关事件时(如:click、mousemove),可以通过事件对象获取当前鼠标的坐标。 获取的坐标...

lumot的博客 3130

视口宽高,元素偏移量,滚动宽高等属性

包含该元素的高度,垂直方向的内边距,边框,以及水平方向的滚动条的值。包含该元素的宽度,水平方向的内边距,边框,以及竖直方向的滚动条的值。window.innerWidth:浏览器可视区域的宽度(浏览器窗口宽度,如果存在垂直滚动条,则包括滚动条)offsetParent:返回一个距离当前元素层级上最近的且包含该元素的定位元素。返回元素的内容区域宽度或者元素的本身宽度两者中最大的值。返回元素的内容高度,包含超出导致视图中不可见的内容高度。这里的视口宽高,指的是浏览器窗口的宽高。

weixin_44759938的博客 174

html鼠标各种坐标,HTML 鼠标坐标和元素坐标

在这一篇文章中,将会介绍鼠标坐标、元素坐标以及鼠标在指定元素内的坐标。1. 鼠标坐标在触发鼠标相关事件时(如:click、mousemove),可以通过事件对象获取当前鼠标的坐标。获取的坐标可分为2种:1)MouseEvent.screenX、MouseEvent.screenY :基于屏幕的X、Y坐标;以屏幕的左上角为0,0起始点。2)MouseEvent.clientX、MouseEven...

weixin_33236524的博客 1241

获取一个页面元素在页面上的坐标位置

//obj-要获取其页面坐标的元素function findPos(obj) { var curleft = curtop = 0; if (obj.offsetParent) {  curleft = obj.offsetLeft  curtop = obj.offsetTop  while (obj = obj.offsetParent) {   curleft += obj.offset

guoguo1980的专栏 4872
上一篇: C++输入输出和文件
下一篇: HTML之CSS Animation 属性常用动画
Computer_Tech
博客等级 码龄3年 573粉丝 49原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值