Vue Element UI 弹框拖拽功能优化 - 防止弹框超出页面顶部
在moveDown函数中,添加如下代码:
const minY = 0; //最小纵向移动距离,即顶部距离页面顶部的距离
document.onmousemove = function (e) {
let left = e.clientX - disX;
let top = e.clientY - disY;
left = left < 0 ? 0 : left;
left = left > maxX ? maxX : left;
top = top < minY ? minY : top; //添加判断,不能超出顶部
top = top > maxY ? maxY : top;
dragDom.style.left = `${left}px`;
dragDom.style.top = `${top}px`;
};
这段代码中,我们添加了一个新的变量 minY,用于设置弹框纵向移动的最小距离,即顶部距离页面顶部的距离。在 document.onmousemove 函数中,我们判断 top 值是否小于 minY,如果是,则将 top 值设置为 minY,从而保证弹框不会超出页面顶部。
通过以上代码的修改,我们就可以解决 Element UI 弹框拖拽功能中弹框超出页面顶部的問題。
原文地址: https://www.cveoy.top/t/topic/oKTc 著作权归作者所有。请勿转载和采集!