【VUE】Vue3自由拖拽标签

news2024/11/13 23:32:38

效果:
请添加图片描述

代码:

<template>
<div>
    <div v-move class="box">
    <label class="move">拽我</label>  
    </div>
</div>
</template>
<script setup lang="ts">
    import { ref, Directive  } from 'vue';
    const vMove: Directive = {
    mounted(el: HTMLElement) {
        let moveEl = el.firstElementChild as HTMLElement;
        const mouseDown = (e: MouseEvent) => {
        //鼠标点击物体那一刻相对于物体左侧边框的距离=点击时的位置相对于浏览器最左边的距离-物体左边框相对于浏览器最左边的距离
        console.log(e.clientX, e.clientY, "-----起始", el.offsetLeft);
        let X = e.clientX - el.offsetLeft;
        let Y = e.clientY - el.offsetTop;
        const move = (e: MouseEvent) => {
            el.style.position = 'absolute';
            el.style.left = e.clientX - X + "px";
            el.style.top = e.clientY - Y + "px";
            console.log(e.clientX, e.clientY, "---改变");
        };
        document.addEventListener("mousemove", move);
        document.addEventListener("mouseup", () => {
            document.removeEventListener("mousemove", move);
        });
        };
        moveEl.addEventListener("mousedown", mouseDown);
    },
    }; 
</script>
<style lang="scss" scoped>
label{
    text-align: center;
    display: block;
    height: 30px;
    line-height: 30px;
    border: 1px solid #000;
    cursor:move;
}
.box {
  position: relative;
  left: 150px;
  top: 70px;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 0;
  .move {
    text-align: center;
    display: block;
    height: 30px;
    line-height: 30px;
    border: 1px solid #000;
    cursor:move;
  }
}
</style>




ps:写完之后就忘了是参考的哪一个地址,如果雷同或侵犯到请告知,我会及时删除该博文。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1596669.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何通过Linux pciehp sysfs接口控制PCIe Slot电源状态?-2

NVME SSD电源状态判断 通过pciehp sysfs接口对NVMe SSD所在的PCIe插槽进行Power On/Off操作时&#xff0c;确实会间接影响到NVMe SSD本身的电源状态。因为NVMe SSD是作为PCIe设备连接到特定插槽上的&#xff0c;插槽电源状态的变化通常会直接影响到与其相连的设备。 当对PCIe…

【Css】table数据为空,以“-“形式展现

解决&#xff1a;class类名 它表示的是在一个名为class类名的元素内部&#xff0c;当该元素为空时&#xff0c;会在该元素的:before伪元素上应用一些样式。 这种写法通常用于在元素内容为空时&#xff0c;添加一些占位符或者提示文字

史上最全excel导入功能测试用例设计(以项目为例)

web系统关于excel的导入导出功能是很常见的&#xff0c;通常为了提高用户的工作效率&#xff0c;在维护系统中的一些数据的时候&#xff0c;批量导入往往比一个一个添加或者修改快很多。针对导入功能的测试&#xff0c;往往会有很多种情况&#xff0c;现在针对平时项目中遇到的…

五款靠谱平台,做地推网推赚钱的都不要错过

现在生活压力都很大&#xff0c;很多人的主业都已经满足不了生活的开支了&#xff0c;做副业增加收入成了大家的选择。对于没有特长的小伙伴来说&#xff0c;选择一个适合自己的副业非常重要。 在这种环境下&#xff0c;现在非常火爆的地推网推就成了很多人的选择。但对于不太…

【论文速读】| CovRL:基于覆盖引导的强化学习对LLM基础变异进行JavaScript引擎模糊测试

本次分享论文为&#xff1a;CovRL: Fuzzing JavaScript Engines with Coverage-Guided Reinforcement Learning for LLM-based Mutation 基本信息 原文作者&#xff1a;Jueon Eom, Seyeon Jeong, Taekyoung Kwon 作者单位&#xff1a;延世大学、苏瑞软科技公司 关键词&#…

SpringBoot + Vue实现的校园(接单跑腿)服务平台管理系统设计与实现+(12000字)毕业论文+开题报告+搭建视频​(包运行成功)

介绍 本系统包含管理员、接单员、普通用户三个角色。 管理员角色&#xff1a;管理员管理、基础数据管理、接单详情管理、接单员管理、公告信息管理、用户管理、用户投诉管理、余额变更记录管理。 接单员角色&#xff1a;接单详情管理、接单员管理、跑腿任务管理。 普通用户…

分类算法(数据挖掘)

目录 1. 逻辑回归&#xff08;Logistic Regression&#xff09; 2. 支持向量机&#xff08;Support Vector Machine, SVM&#xff09; 3. 决策树&#xff08;Decision Tree&#xff09; 4. 随机森林&#xff08;Random Forest&#xff09; 5. K近邻&#xff08;K-Nearest …

JavaScript(五)-正则表达式

文章目录 正则表达式正则表达式的介绍语法元字符修饰符 正则表达式 正则表达式的介绍 什么是正则表达式 正则表达式&#xff08;Regular expression&#xff09;是用于匹配字符串中字符组合的模式&#xff0c;在JavaScript中&#xff0c;正则表达式也是对象通常用来查找、替…

【Golang学习笔记】从零开始搭建一个Web框架(三)

文章目录 分组控制分组嵌套中间件 前情提示&#xff1a; 【Golang学习笔记】从零开始搭建一个Web框架&#xff08;一&#xff09;-CSDN博客 【Golang学习笔记】从零开始搭建一个Web框架&#xff08;二&#xff09;-CSDN博客 分组控制 分组控制(Group Control)是 Web 框架应提供…

传销?链动2+1模式 合法合规的商业模式!

大家好&#xff0c;我是吴军&#xff0c;来自一家深耕于软件开发领域的公司&#xff0c;担任产品经理的职务。 今天&#xff0c;我希望与大家共同探讨一个具有深刻意义的话题——链动21模式&#xff0c;并探究其如何有效应对用户留存与复购的挑战。 或许有人会说&#xff0c;链…

UE5学习日记——实现自定义输入及监听输入,组合出不同的按键输入~

UE5的自定义按键和UE4有所不同&#xff0c;在这里记录一下。 本文主要是记录如何设置UE5的自定义按键&#xff0c;重点是学会原理&#xff0c;实际开发时结合实际情况操作。 输入映射 1. 创建输入操作 输入操作并不是具体的按键映射&#xff0c;而是按键的激活方式&#xff0…

如何落地一个FaaS平台?

简介&#xff1a; 函数即服务&#xff08;FaaS&#xff09;作为云计算 2.0 时代重要的发展方向&#xff0c;能够从工程效率、可靠性、性能、成本等方面给开发者带来巨大的价值&#xff0c;尤其是能够极大地提升研发效率。因此&#xff0c;拥抱FaaS成为开发者关心的重要技术领域…

01-Git 之快速入门操作本地仓库

https://learngitbranching.js.org/?localezh_CN在线练习git 1. Git 安装好Git以后, 先检查是否已经绑定了用户名和邮箱 git config --list1.1 为什么要使用版本控制&#xff1f; 从个人角度&#xff1a; 在做项目时&#xff0c;如果一点点去改代码会很乱&#xff0c;不利…

华为云开年采购季:企业级市场的火爆营销炼成记

作者 | 曾响铃 文 | 响铃说 销售火爆&#xff0c;一单又一单&#xff0c;“生意好个不停”。 这一幕&#xff0c;常常发生在C端消费品市场上&#xff0c;要么是线上爆单&#xff0c;要么是线下人头攒动。 而现在&#xff0c;在B端企业级市场上也发生了类似的情景。 自3月1…

ZJJ-2A直流绝缘监视继电器额定电流3.1mA额定电压110VDCJOSEF约瑟

系列型号 JJJ-1绝缘监视继电器&#xff1b; ZJJ-1/A绝缘监视继电器&#xff1b; ZJJ-1A绝缘监视继电器&#xff1b; ZJJ-2型直流绝缘监视继电器 ZJJ-2直流绝缘监视继电器&#xff1b; ZJJ-2B直流绝缘监视继电器&#xff1b; ZJJ-2AC直流绝缘监视继电器&#xff1b; 用途…

Day 41:动态规划 LeedCode 343. 整数拆分 96.不同的二叉搜索树

343. 整数拆分 给定一个正整数 n &#xff0c;将其拆分为 k 个 正整数 的和&#xff08; k > 2 &#xff09;&#xff0c;并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。 示例 1: 输入: n 2 输出: 1 解释: 2 1 1, 1 1 1。 思路: 1.确定dp数组&#xff0…

《TinyLlama: An Open-Source Small Language Model》全文翻译

【Title】 TinyLlama&#xff1a;开源小语言模型 【Abstract】 我们推出了 TinyLlama&#xff0c;这是一个紧凑的 1.1B 语言模型&#xff0c;在大约 1 万亿个令牌上进行了大约 3 个时期的预训练。 TinyLlama 基于 Llama 2&#xff08;Touvron 等人&#xff0c;2023b&#xff…

自定义Centos的终端的命令提示符

背景 当我们使用终端登陆Centos时&#xff0c;就自动打开了ssh终端。这个终端的命令提示符一般是这样的&#xff1a; 这个以#号结束的一行字&#xff0c;就是我们说的命令提示符了。 这个是腾讯云的服务器的提示符&#xff0c;可以看到主机名是VM-4-7-centos。 但是这个看起…

Python-GEE遥感云大数据分析、管理与可视化及多领域案例实践应用

随着航空、航天、近地空间遥感平台的持续发展&#xff0c;遥感技术近年来取得显著进步。遥感数据的空间、时间、光谱分辨率及数据量均大幅提升&#xff0c;呈现出大数据特征。这为相关研究带来了新机遇&#xff0c;但同时也带来巨大挑战。传统的工作站和服务器已无法满足大区域…

SD-WAN提升企业网络体验

在现代企业中&#xff0c;网络体验已成为提升工作效率与业务质量的关键因素。SD-WAN技术的出现&#xff0c;以其独特的优势&#xff0c;为企业提供了优化网络连接、加速数据传输、提升服务质量和应用访问体验&#xff0c;以及增强网络稳定性的解决方案。接下来&#xff0c;我们…