zoukankan      html  css  js  c++  java
  • 获取页面元素的位置

    引子

    最近在写一个chrome插件,用来发现页面中感兴趣的图片,这个功能首先需要能获取到特定元素的位置和区域。于是搜索到了 getBoundingClientRect 这个方法。

    精密的返回值

    dom元素可以调用这个方法,返回6个数值,分别是:

    bottom
    height
    left
    right
    top
    width
    这六个值得精度都比较高。下面是一个图片的信息

    1 bottom:35.80965805053711
    2 height:26.818180084228516
    3 left:681.2783813476562
    4 right:708.0965576171875
    5 top:8.991477012634277
    6 26.818180084228516
    top ,left,bottom,right,标志的是元素的位置,这个位置是相对于浏览器窗口的,并且考虑滚动。所以实际的坐标需要结合滚动情况一起考虑。一般就是加上 top + document.body.scrollTop 或者 left + document.body.scrollLeft。

    bottom 和 right 比较少使用。bottom 是元素的底部边界到窗口的上界的间距,所以 bottom - height = top。 而 right 就是右边界到窗口的左界的间距,所以 right - width = left。

    例子

    点击按钮,创建一个带轮廓的 div,并覆盖在图片上。

    参考

  • 相关阅读:
    软件项目“免坑”指南
    软件项目质量保证——编码规范
    从Web借鉴UI设计
    C#学习笔记——面向对象、面向组件以及类型基础
    关系数据库设计
    Winform开发框架之插件化应用框架实现
    桌面程序界面设计分享
    2-Bom
    1-简介
    测试
  • 原文地址:https://www.cnblogs.com/Rexxar/p/5566852.html
Copyright © 2011-2022 走看看