美文网首页Vue让前端飞
vue 拖拽元素指令

vue 拖拽元素指令

作者: 蓝海00 | 来源:发表于2021-10-14 14:31 被阅读0次
    效果图
    • 使用
     <!-- 注意要给div元素设置position 和 z-index -->
    <div v-drap>盒子</div>
    
    • 实现代码
    // 拖拽元素
    Vue.directive('drag', function (el: any) {
        el.onmousedown = function (ev: any) {
            const disX = ev.clientX - el.offsetLeft;
            const disY = ev.clientY - el.offsetTop;
            document.onmousemove = function (ev) {
                const l = ev.clientX - disX;
                const t = ev.clientY - disY;
                el.style.left = l + 'px';
                el.style.top = t + 'px';
            };
            document.onmouseup = function () {
                document.onmousemove = null;
                document.onmouseup = null;
            };
        };
    });
    

    相关文章

      网友评论

        本文标题:vue 拖拽元素指令

        本文链接:https://www.haomeiwen.com/subject/ryfuoltx.html