vue 获取元素距离窗口顶部和左侧(可能是滚动条滚动后)的精确位置

vue代码如下

<button ref="configBtn" >获取位置</button>

js代码如下

 function offsetTop(elements) {
   var top = elements.offsetTop;
     var parent = elements.offsetParent;
     while (parent != null) {
       top += parent.offsetTop;
       parent = parent.offsetParent;
     }
     // console.log(top);
     return top;
 }
 function offsetLeft(elements) {
     var left = elements.offsetLeft;
     var parent = elements.offsetParent;
     while (parent != null) {
         left += parent.offsetLeft;
         parent = parent.offsetParent;
     }

     return left;
 }
 //原生js获取顶部位置和左侧位置的方法
 var searchText = document.getElementsByClassName(
                  "searchText"
                )[0];
   var top = offsetTop(searchText);
    var left = offsetLeft(searchText);

//vue获取顶部位置和左侧位置的方法
var searchText = this.$refs.configBtn
var top = offsetTop(searchText);
    var left = offsetLeft(searchText);

转载于:https://blog.liushuai.cq.cn/article/detail/49

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐