项目中需要做一个小弹层,如下图:
我需要知道点击元素距离顶部的值,再计算弹层的top值,如下图:
在vue中如何获取到DOM元素距离窗口顶部的值呢?
1.通过$event获取
html:
<div class="sort-item" @click="showFilter($event)"> {{currentFilter}} <div class="sort-icon"> <i class="iconfont icon-shaixuan"></i> </div> </div>
methods:
showFilter: function ($event) { this.filterShow = true; this.popoverShow = true; this.filterPosTop = $event.currentTarget.getBoundingClientRect().top; },
如下图:
2.通过this.$refs.***获取
1.目标DOM定义ref值:
2.通过 【this.$refs.***.属性名】 获取相关属性的值: