扫码关注官方订阅号
鼠标点击元素后, js获取该元素相对于浏览器左上角的位置偏移, 现在只有鼠标点击的event
光阴似箭催人老,日月如移越少年。
看了下你的解決方法,但是其實不用那麼複雜,原生的 dom 就有提供一個 getBoundingClientRect() 方法可以取得元素相對於瀏覽器的位置,而且兼容到 IE 8:
dom
getBoundingClientRect()
IE 8
你可以這樣使用它:
showPopup: function(e){ var rect = e.target.getBoundingClientRect() this.popup.x = rect.left this.popup.y = rect.top }
没看懂你的代码。
按你的描述写了个例子。http://runjs.cn/code/ubnuxnpj
Runjs 运行有点卡,你可以复制下来试试。我本地是完全不会卡顿的。
event为鼠标点击元素的事件e.target 可以获取到当前点击的元素,然后使用jquery方法获取元素位置
代码:
showPopup:function(e){ var pos = $(e.target).offset(); console.log(pos); }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
看了下你的解決方法,但是其實不用那麼複雜,原生的
dom就有提供一個getBoundingClientRect()方法可以取得元素相對於瀏覽器的位置,而且兼容到IE 8:你可以這樣使用它:
没看懂你的代码。
按你的描述写了个例子。http://runjs.cn/code/ubnuxnpj
Runjs 运行有点卡,你可以复制下来试试。我本地是完全不会卡顿的。
event为鼠标点击元素的事件
e.target 可以获取到当前点击的元素,然后使用jquery方法获取元素位置
代码: