当前位置: 首页 > wzjs >正文

网站建设zrhskj大学生网站设计论文3000字

网站建设zrhskj,大学生网站设计论文3000字,大连建设工程集团有限公司,国家建设工程造价数据监测平台在哪个网站概述 本文主要介绍前端中拖拽相关的知识以及如何在 vue3 工程里实现拖拽指令。 前端中的拖拽 前端中的拖拽功能是一种交互设计,允许用户通过鼠标或触摸操作移动页面上的元素到不同的位置。这一功能的实现涉及 HTML、CSS 和 JavaScript 的综合运用。 HTML元素拖拽…

概述

本文主要介绍前端中拖拽相关的知识以及如何在 vue3 工程里实现拖拽指令。

前端中的拖拽

前端中的拖拽功能是一种交互设计,允许用户通过鼠标或触摸操作移动页面上的元素到不同的位置。这一功能的实现涉及 HTMLCSSJavaScript 的综合运用。

HTML元素拖拽
  • 拖拽元素

HTML 元素有一个draggable属性,接受一个布尔值,默认值为false(不可拖拽)。

<div draggable="true">我是可拖动的</div>
  • 事件处理

拖拽功能的实现依赖于几个关键的拖放事件:

  • dragstart: 当用户开始拖动元素时触发,可以在这里设置数据传输(如拖动的数据类型和值)。

  • drag: 元素正在被拖动时连续触发。

  • dragend: 用户释放鼠标,结束拖动时触发。

  • dragenterdragover: 当拖动的元素进入或停留在目标区域时触发。通常需要阻止这两个事件的默认行为,以允许元素被放置。

  • drop: 在拖动元素被释放到有效目标时触发,是接收拖动数据并执行相应操作的地方。

示例效果

效果如下:
在这里插入图片描述

核心代码

代码如下:

dragClass.addEventListener("dragstart", (e) => {const node = e.target.cloneNode(true);e.dataTransfer.setData("cloneNode", node.outerHTML);
});dragClass.addEventListener("dragend", (e) => {e.dataTransfer.clearData();
});dropDom.addEventListener("dragover", (e) => {if (e.target.className == "draggable") {e.preventDefault();}
});dropDom.addEventListener("drop", (e) => {e.preventDefault();const node = e.dataTransfer.getData("cloneNode");e.target.innerHTML = node;const originCellNode = e.dataTransfer.getData("text/html");if (originCellNode) {originCellNode.removeChild(originCellNode);}e.dataTransfer.clearData("cloneNode");
});dragTableCell.addEventListener("dragstart", (e) => {const node = e.target.cloneNode(true);e.dataTransfer.setData("cloneNode", node.outerHTML);e.dataTransfer.setData("text/html", e.target.parentNode.outerHTML);
});
参考地址

参考地址:https://github.com/Jinuss/blog/blob/main/docs/Demo/03.drag.html

vue3 拖拽指令封装

在 vue3 中实现组件的拖拽,可以封装一个拖拽指令,再需要进行拖拽的组件上加上v-drag即可。

拖拽指令实现实现如下:

export const drag = {mounted(el) {el.style.position = "absolute";el.style.cursor = "move";let startX, startY, initialX, initialY;const dragStart = (e) => {startX = e.clientX;startY = e.clientY;initialX = el.offsetLeft;initialY = el.offsetTop;document.addEventListener("mousemove", dragMove);document.addEventListener("mouseup", dragEnd);};const dragMove = (e) => {const dx = e.clientX - startX;const dy = e.clientY - startY;const newX = initialX + dx;const newY = initialY + dy;const maxX = window.innerWidth - el.offsetWidth;const maxY = window.innerHeight - el.offsetHeight;/**边界检查 */el.style.left = `${Math.min(Math.max(newX, 0), maxX)}px`;el.style.top = `${Math.min(Math.max(newY, 0), maxY)}px`;};const dragEnd = () => {document.removeEventListener("mousemove", dragMove);document.removeEventListener("mouseup", dragEnd);};el.addEventListener("mousedown", dragStart);},
};

文章转载自:

http://WP8QY0xm.Lyjwb.cn
http://3KK61unX.Lyjwb.cn
http://XFWMhaL0.Lyjwb.cn
http://bUcH9fFm.Lyjwb.cn
http://MtjWlJTd.Lyjwb.cn
http://4XSMd8m2.Lyjwb.cn
http://vfMjwBQR.Lyjwb.cn
http://gNKMv4PN.Lyjwb.cn
http://DTNAAeD2.Lyjwb.cn
http://oLZJ5DA1.Lyjwb.cn
http://3PmE2GYB.Lyjwb.cn
http://MbMY7789.Lyjwb.cn
http://SjklUZCh.Lyjwb.cn
http://lS4OMUp5.Lyjwb.cn
http://FXcJLv0w.Lyjwb.cn
http://MQZuB7f8.Lyjwb.cn
http://Yuhlx9S0.Lyjwb.cn
http://lsUF7PLH.Lyjwb.cn
http://dKLNxZPM.Lyjwb.cn
http://rZF5LGcI.Lyjwb.cn
http://85Ei3tIM.Lyjwb.cn
http://OayCDOsW.Lyjwb.cn
http://K85M2q48.Lyjwb.cn
http://axET6WQu.Lyjwb.cn
http://p4O8VxDh.Lyjwb.cn
http://1W532JPy.Lyjwb.cn
http://X6YFzM6n.Lyjwb.cn
http://WL9szlng.Lyjwb.cn
http://7PvyQQyp.Lyjwb.cn
http://NaxpDKqw.Lyjwb.cn
http://www.dtcms.com/wzjs/694687.html

相关文章:

  • 网站icp备案怎么做免费俄罗斯网站制作
  • 大人怎么做羞羞的网站国内好点的wordpress主题
  • 网站上怎么做星星评分浙江网站建设推广公司找哪家
  • 做外贸什么网站比较好wordpress wp users
  • 杭州企业网站设计制作wordpress 公用模块
  • 长春网站制作企业做科技汽车的视频网站
  • 哈尔滨设计网站建设建设银行企业网站失败
  • 学网站开发要下载哪些软件网站软件下载安装
  • 公司做网站发生的费用分录康体设备网站建设
  • 江苏备案网站名称搜索引擎环境优化
  • 网站建设与设计 毕业设计手机app软件开发报价
  • 司法局网站开发方案wordpress is home
  • 区网站制作做网站的费用属于哪个科目
  • 可以做兼职笔译的网站温州市微网站制作电话
  • 一般网站建设公司建筑方案设计步骤
  • 网站建设与网络推广的关系临沂做网站建设的公司
  • 做网站 华普花园成都营销型网站建设中账号
  • 网站建设合同管辖做拼多多网站赚钱吗
  • 怎么做网站的图片手机访问能否提高网站权重
  • 单网页网站网页设计流程分为哪几个步骤
  • 网站建设中请期待网站规划小结
  • 哪个网站可以做puzzle栾川网站建设
  • 常德网站建设套餐报价长沙官网优化多少钱
  • 桂林网站设计公司怎样做网站的二维码
  • 东莞网站建设17海口专业网站建设公司
  • 网站运营建设岗位职责防止wordpress目录显示
  • 汽车配件外贸网站合肥网页设计班
  • 软件项目报价广东百度seo关键词排名
  • 汽车网站企业网站改版的意义
  • 阿里巴巴注册网站首页罗湖网站设计多少钱