本文实例为大家分享了Vue实现拖拽滑动分割面板的具体代码,供大家参考,具体内容如下 需求背景 左边是列表,右边是详情。 想更大范围的查看详情,所以要拖拽滑块,进行面板的分割 整体思路
本文实例为大家分享了Vue实现拖拽滑动分割面板的具体代码,供大家参考,具体内容如下
左边是列表,右边是详情。 想更大范围的查看详情,所以要拖拽滑块,进行面板的分割
在template里 写事件
@mousedown.prevent="mousedown"
在methods里写方法
mousedown() {
document.addEventListener('mousemove', this.handleMouseMove, false);
document.addEventListener('mouseup', this.handleMouseUp, false);
},
handleMouseMove(e) {
const clientRect = this.$refs.mainContent.getBoundinGClientRect();
const offset = e.pageX;
const panelPercent = (offset / clientRect.width) * 100;
this.panelPercent = panelPercent;
this.mainContentWidth = offset;
this.$refs.imgMove.style.left = panelPercent + '%';
console.log('拖动中', this.panelPercent);
},
handleMouseUp () {
document.removeEventListener('mousemove', this.handleMouseMove, false);
},
对边界处理
if (this.panelPercent < this.min) {
this.panelPercent = this.min
}
if (this.panelPercent > this.max) {
this.panelPercent = this.max
}
--结束END--
本文标题: vue实现拖拽滑动分割面板
本文链接: https://www.lsjlt.com/news/143341.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-01-12
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0