当前位置: 首页 > Web前端 > vue.js

Vue实现快速定位

时间:2023-03-31 14:41:35 vue.js

元素的需求:一个列表中可能有N条以上的数据,我选择一项查看详情。如果上下滚动再想找到这个位置,可能会很麻烦,需要再滚动再滚动。所以需要一个浮动的上下箭头,快速定位到刚才的位置。下面是我做的效果~~~实现思路:1.首先需要监听滚动条滚动事件//如果这里没有检测到@click,你可以试试@click.native{{item}}

//每行显示什么
2、点击这一行获取item到父元素顶部的距离(因为我数据量很大,又是树树,所以用了这个元素的index和将它乘以线高30px,还可以得到它离顶部的距离clickItem({index}){//index表示这一行数据的索引this.itemTop=index*30;//这里的30表示即我这一行的高度是30,这一行的索引是*30就是距离父元素顶点的高度}3.滚动的时候判断是否在可见区域,判断是否被遮挡aboveorbelowscrollFun(){//这个函数被触发w检测到滚动。this.isHoverIcon=false;//首先隐藏浮动图片letscrollTop=document.querySelector('.parentBox').scrollTop;//滚动条的高度if(this.checkedItem&&(scrollTop>this.itemTop+30||scrollTopthis.itemTop+30){this.hoverIcon='shangjiantou';}elseif(scrollTop