getBoundingClientRect()来获取页面元素的位置”
getBoundingClientRect()来获取页面元素的位置”
获取的是一个对象;
延伸阅读;
https://mp.weixin.qq.com/s?__biz=MzAxODE2MjM1MA==&mid=403029188&idx=2&sn=1088e273b855b75815edb2e7977a0513&scene=0&key=710a5d99946419d988a823a3f76c4dabc336d68c1e192697aba3d5cdba0fce0f3dcb6b78a1934ce2f133ceeaab13180f&ascene=0&uin=MjY5MTA1NTUyNg%3D%3D&devicetype=iMac+MacBookAir7%2C2+OSX+OSX+10.10.5+build(14F1509)&version=11020012&pass_ticket=0TjAxgbmAwJ36hKBl6%2FKYh6xGq2b%2F%2BtEvMKL4mdzjFQTBk5DbaxNFQJwTuWK9VBv
1 <!doctype html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <style> 7 #w3124{ 8 width: 100px; 9 height:100px; 10 background:#f45; 11 position: absolute; 12 left:100px; 13 } 14 #w3124.totes-at-the-end{15 top: 200px; 16 } 17 #w3124.animate-on-transforms{18 transition: all 1s; 19 20 } 21 </style> 22 </head> 23 <body> 24 <div id="w3124" class=""> 25 26 </div> 27 <script> 28 console.log(document.getElementById("w3124").getBoundingClientRect()); 29 var el = document.getElementById("w3124"); 30 function tidyUpAnimations(){ 31 console.log(222) 32 } 33 // 获取初始位置 34 var first = el.getBoundingClientRect(); 35 36 // 为元素指定一个样式,让元素在最终位置上 37 el.classList.add('totes-at-the-end'); 38 39 // 获取最终位置 40 var last = el.getBoundingClientRect(); 41 42 // 如果有必要也可以对其他样式进行计算,但最好坚持只进行 transform 和 opacity 相关的计算 43 var invert = first.top - last.top; 44 console.log(invert); 45 46 // 反转 47 el.style.transform = 'translateY(' + invert + 'px)'; 48 49 // 等到下一帧,也就是其他所有的样式都已经被应用 50 requestAnimationFrame(function() { 51 52 // 添加动画相关的设置 53 el.classList.add('animate-on-transforms'); 54 55 // 开始动画 56 el.style.transform = ''; 57 },5000); 58 59 // 结束时清理 60 el.addEventListener('transitionend', tidyUpAnimations); 61 </script> 62 </body> 63 </html>
转载于:https://www.cnblogs.com/suoking/p/5361831.html
getBoundingClientRect()来获取页面元素的位置”相关推荐
- 用getBoundingClientRect()来获取页面元素的位置
以前绝大多数的使用下面的代码来获取页面元素的位置: [code="javascript"]var _x = 0, _y = 0; do{ _x += el.offsetLeft; ...
- 获取html元素的位置,如何获取页面元素的位置
背景:最近在商品列表项目迭代中,需要在商品列表底部增加一个分销商品广告位,另外接收到一个产品曝光度的埋点需求,需要知道产品出现在用户视口后在进行数据统计! 基于虚拟 DOM 数据驱动的思想,最不提倡的 ...
- 用Javascript获取页面元素的位置
制作网页的过程中,你有时候需要知道某个元素在网页上的确切位置. 下面的教程总结了Javascript在网页定位方面的相关知识. 一.网页的大小和浏览器窗口的大小 首先,要明确两个基本概念. 一张网页的 ...
- vue 获取元素在浏览器的位置_前端开发JS获取页面元素的位置
1.网页的大小和浏览器窗口的大小 一张网页的全部面积,就是它的大小.通常情况下,网页的大小由内容和 document元素的clientHeight和clientWidth属性,就代表了网页的大小. f ...
- java 获取页面元素的位置_Selenium Java 页面元素定位2
一.操作目的 1.1 自动化测试常用操作 1.定位网页上的元素,并存储到一个变量中: 2.对变量进行操作,比如点击或输入文字: 3.设定页面元素的操作值: 二.定位方法汇总 2.1 findEleme ...
- 使用html元素的getBoundingClientRect来获取dom元素的时时位置和大小
使用: var section = $('.section'):这是jquery包装的dom元素,其他前端框架返回的可能也是一个包装元素, 我们需要获得的是里面的html的dom元素 然后:secti ...
- [html] 精确获取页面元素位置的方式有哪些?
[html] 精确获取页面元素位置的方式有哪些? let btn = document.querySelector('#ele') let {top, left} = getComputedStyle ...
- 获取页面元素的滚动位置,兼容各浏览器
/***获取页面元素的滚动位置@param {DOM} el Dom元素*return {Object} 元素滚动位置对象*/function getScroll (el) {var d = el,d ...
- js,jquery获取页面元素距离浏览器工作区顶端的距离
先介绍几个属性:(暂时只测了IE和firefox,实际上我工作中用到的最多的是chrome) 网页被卷起来的高度/宽度(即浏览器滚动条滚动后隐藏的页面内容高度) (javascript) ...
- 使用Selenium含蓄等待获取页面元素(附带实际业务需求情景)
Hello,大家好,又到了小猿分享技术的时间了.这回带来的是使用Selenium去网站上获取部分信息并且执行部分操作以及"含蓄"等待元素加载完成以及截取图片和网页刷新机制的技术点. ...
最新文章
- 加强原始创新和基础研究的前提:三项破解之策
- domino大百科常见问题总汇1(转载)
- mysql驱动名更新
- P_C_Brules
- Python进阶_wxpy学习:机器人对象
- rust(63)-全局静态变量
- RMAN-06026报错解决方法
- 前端学习(1317):静态资源2
- MacBook 没有响应的应用程序 CUH
- Linux内存管理:内存寻址之分段机制与分页机制
- 计算机组成原理所需芯片数,计算机组成原理-微电子学院微电子试验教学中心.PPT...
- ASP.NET之JSONHelper操作
- BlogEngine学习一:操作符重载
- 查看docker镜像内部端口号_DOCKER 常用命令
- android通讯录字母特效,Flutter 城市/通讯录列表字母索引联动效果实现
- python 通达信选股_python通达信指标
- 【模仿学习】南京大学港中文联合总结: 29页中文详述模仿学习完整过程
- 数学 - 基本初等函数导数公式及求导法则
- 网易校招测试岗位2018
- 计算机系统盘怎么扩充,如何给电脑c盘扩容