vue,div实现拖动,并给新位置

news/2024/11/14 22:05:23/

鼠标方上去随意拖动到其它位置
在这里插入图片描述


<template><div style="margin: 50px;"><div class="dade draggable-div"  @mousedown="startDrag($event)" @mouseup="stopDrag" @mousemove="drag($event)"style="width: 200px;height: 200px;border: 1px solid #e7e7e7;cursor: all-scroll;"></div></div>
</template><script>export default {data() {return {isDragging: false,startX: 0,startY: 0,currentX: 0,currentY: 0};},watch: {},//界面没出来前加载created() {this.list = menu_tree;},mounted() {},computed: {},methods: {//鼠标按下startDrag(event) {this.isDragging = true;this.startX = event.clientX;this.startY = event.clientY;this.currentX = parseInt(event.target.offsetLeft);this.currentY = parseInt(event.target.offsetTop);// event.target.style.cursor = 'grabbing';document.addEventListener('mousemove', this.drag);document.addEventListener('mouseup', this.stopDrag);},drag(event) {if (this.isDragging) {const diffX = event.clientX - this.startX;const diffY = event.clientY - this.startY;event.target.style.left = this.currentX + diffX + 'px';event.target.style.top = this.currentY + diffY + 'px';}},stopDrag() {this.isDragging = false;// event.target.style.cursor = 'grab';document.removeEventListener('mousemove', this.drag);document.removeEventListener('mouseup', this.stopDrag);}}
};
</script><style scoped>.dade{-webkit-box-shadow: 0 2px 0px 0 rgba(0,0,0,.1);box-shadow: 0 2px 12px 0 rgba(0,0,0,.1);}.draggable-div {position: absolute;}
</style>

http://www.ppmy.cn/news/1513929.html

相关文章

MySQL中处理JSON数据:大数据分析的新方向

1. JSON 数据类型 1.1、JSON 类型&#xff1a;MySQL 支持使用 JSON 类型来存储 JSON 文档。 1.2、存储空间&#xff1a;存储 JSON 文档所需的空间与存储 LONGBLOB 或 LONGTEXT 类似。 1.3、默认值&#xff1a;在 MySQL 8.0.13 之前&#xff0c;JSON 列不能有非…

[CLIP-VIT-L + Qwen] 多模态大模型源码阅读 - 视觉模型篇

[CLIP-VIT-L Qwen] 多模态大模型学习笔记 - 5 前情提要源码解读&#xff08;visualModel类&#xff09;init函数整体含义逐行解读 get_image_features函数&#xff08;重构&#xff09;整体含义逐行解读 main函数整体含义逐行解读 参考repo:WatchTower-Liu/VLM-learning; url:…

004快速排序-python实现

插入排序原理讲解&#xff08;以升序为例&#xff09; 每一轮选取一个参考点&#xff0c;通常为序列的第一个元素或者是序列的最后一个元素&#xff0c;我们此处选取序列的第一个元素作为参考点&#xff0c;将其存入key中&#xff0c;接下来 用key表示参考点的元素。每一轮中&a…

某211电子硕,为什么选择学fpga?

据国海证券发布的快速崛起的国内FPGA龙头报告。 FPGA 作为半定制化、可编程的集成电路&#xff0c;具备高度灵活性&#xff0c;下游主要应用于通信、工业等领域&#xff0c;二者合计占比超七成。国内FPGA市场规模全球占比约为38%&#xff0c;是FPGA主要的消费国。 从人才结构来…

十四、模拟实现 list 类

Ⅰ . list 基本框架的实现 01 结点的建立 为了实现链表&#xff0c;我们首先要做的应该是建立结点 为了和真正的 list 进行区分&#xff0c;我们仍然在自己的命名空间内实现 代码实现&#xff1a; namespace yxt {// 建立结点template<class T>struct ListNode{T _d…

每日一问:深入理解MySQL中的锁机制

每日一问&#xff1a;深入理解MySQL中的锁机制 MySQL作为最流行的关系型数据库管理系统之一&#xff0c;其锁机制在保证数据一致性和并发性方面发挥了关键作用。MySQL的锁机制复杂且多样&#xff0c;涵盖了表级锁、行级锁、共享锁、排他锁、意向锁等多个层面。理解这些锁及其互…

CSS的:required和:optional伪类:提升表单可访问性与用户体验

在Web表单设计中&#xff0c;清晰地指示哪些字段是必填的&#xff0c;哪些是可选的&#xff0c;对于提升用户体验和表单的可访问性至关重要。CSS提供了两个非常有用的伪类&#xff1a;:required和:optional&#xff0c;它们允许开发者为必填和非必填的表单输入字段应用特定的样…

达梦表字段、字段类型,精度比对及更改字段SQL生成

达梦表字段、字段类型&#xff0c;精度比对及更改字段SQL生成&#xff1a; 依赖 <!-- 达梦 Connector --><dependency><groupId>com.dameng</groupId><artifactId>DmJdbcDriver18</artifactId><version>8.1.3.62</version>&l…