HTML5 元素拖拽 移动删除效果

前端拖拽事件解析-react实现拖拽效果demo 前言 在平时开发中会有一些涉及到通过拖拽效果完成的业务需求,那么我们就需要了解和学习拖拽相关的知识,在html5中就有原生的拖拽api,下面就来使用这些api实现一个灵活拖拽的demo。 拖拽流程 简单来说完成拖拽一共需要三步: 开始拖拽 -> 拖拽中 -> 结束拖拽。 在这些步骤中又会有许多更细节的步骤需要处理,完整流程如下: 1、设置指定元素为可拖拽元素(使用draggable属性,只有设置了draggable属性,元素才可以被拖动) 2、点击拖拽元素开始进行拖拽并监听拖拽开始事件(设置拖拽 阅读详情
<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
	<title> 通过拖放实现添加、删除 </title>
	<style type="text/css">
		div>div{
			display: inline-block;
			padding: 10px;
			background-color: #aaa;
			margin: 3px;
		}
	</style>
</head>
<body>
<div style="width:600px;border:1px solid black;">
<h2>可将喜欢的语言拖入收藏夹</h2>
<div draggable="true" ondragstart="dsHandler(event);">JAVA</div>
<div draggable="true" ondragstart="dsHandler(event);">PHP</div>
<div draggable="true" ondragstart="dsHandler(event);">C++</div>
<div draggable="true" ondragstart="dsHandler(event);">C</div>
</div>
<div id="dest"
	style="width:400px;height:260px; 
	border:1px solid black;float:left;">
	<h2>收藏夹</h2>
</div>
<img id="gb" draggable="false" src="garbagebin.png"
	alt="垃圾桶" style="float:left;"/>
<script type="text/javascript">
	var dest = document.getElementById("dest");
	// 开始拖动事件的事件监听器
	var dsHandler = function(evt)
	{
		// 将被拖动元素的innerHTML属性值设置成被拖动的数据
		evt.dataTransfer.setData("text/plain"
			, "<item>" + evt.target.innerHTML);
	}
	dest.ondrop = function(evt)
	{
		var text = evt.dataTransfer.getData("text/plain");
		// 如果该text以<item>开头
		if (text.indexOf("<item>") == 0)
		{
			// 创建一个新的div元素
			var newEle = document.createElement("div");
			// 以当前时间为该元素生成一个唯一的ID
			newEle.id = new Date().getUTCMilliseconds();
			// 该元素内容为“拖”过来的数据
			newEle.innerHTML = text.substring(6);
			// 设置该元素允许拖动
			newEle.draggable="true";
			// 为该元素的开始拖动事件指定监听器
			newEle.ondragstart = function(evt)
			{
				// 将被拖动元素的id属性值设置成被拖动的数据
				evt.dataTransfer.setData("text/plain"
					, "<remove>" + newEle.id);
			}
			dest.appendChild(newEle);
		}

	}
	// 当把被拖动元素“放”到垃圾桶上时激发该方法。
	document.getElementById("gb").ondrop = function(evt)
	{
		var id = evt.dataTransfer.getData("text/plain");
		// 如果id以<remove>开头
		if (id.indexOf("<remove>") == 0)
		{
			// 根据“拖”过来的数据,获取被拖动的元素
			var target = document.getElementById(id.substring(8));
			// 删除被拖动的元素
			dest.removeChild(target);
		}
	}
	document.ondragover = function(evt)
	{
		// 取消事件的默认行为
		return false;
	}
	document.ondragleave = function(evt){
	//取消被拖动的元素离开本元素时触发该事件
		return false;
		
	}
	document.ondrop = function(evt)
	{
		// 取消事件的默认行为
		return false;
	}
</script>
</body>
</html>

H5页面实现日历表格标签左右拖拽,和删除 该页面引用bootstrap.js,实现HTML5,左右拖拽标签功能,标签拖入表格显示一行标签,并且能够删除 立即下载

相关推荐

页面div拖动交换位置,动态添加删除页面元素

页面div拖动交换位置,动态添加删除页面元素

HTML5--拖拽API(含超经典例子)

一、关于拖拽API 拖拽API是HTML5的新特性,相对于其他新特性来说,重要程度占到6成,实际开发中使用比例占到3成,学习要求个人认为是达到掌握即可的程度。 二、什么是拖拽和释放? 拖拽:Drag 释放:Drop 拖拽指的是鼠标点击源对象后一直移动对象不松手,一但松手即释放了 三、什么是源对象和目标对象? 源对象:指的是我们鼠标点击的

冯小东 5万+

js实现拖拽删除添加功能

纯js实现拖拽删除添加功能,有示例,简单实用

H5拖放删除运用

利用H5新特性拖放API实现在拖放删除功能,以下是静态效果,实现的功能为拖放下面三架飞机中的某一架飞机图片至垃圾桶上方释放时,被拖放的飞机图片从三架飞机里面删除。 以下是代码实现 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title......

分享前端工程化、AI 应用、Agent 开发与大模型实践! 1427

线性代数知识点整理

线性代数基础知识点摘要整理

cuguanren的博客 3万+

H.264 Profile与Level详解:如何为不同应用场景选择合适的编码配置

本文深入解析了H.264编码标准中的Profile与Level概念,指导开发者如何为不同应用场景选择合适的配置。文章对比了Baseline、Main和High三大Profile的特性与适用场景,并解释了Level如何限定视频的分辨率、帧率与码率上限。通过实战指南,帮助读者在视频通话、在线点播和专业制作等场景中,平衡画质、兼容性与性能,实现高效编码。

rgv2345678的博客 241

html5 拖拽删除,H5拖拽删除文件

在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。全局属性draggable:标签设置draggable=true后,就能够被拖拽:单纯地给元素加上draggable属性,也只能在鼠标按住、拖拽、放开时看到特效,它仅仅证明该元素是可以被拖拽的。要实现真正的拖拽删除文件,拖拽上传文件等等效果,必须结合Drag & Drop API开发。HTML5提供专门的拖拽与拖放的API举个栗...

weixin_33900596的博客 709

CST 仿真_NFC仿真

在CST中实现NFC天线单体的仿真

qq_43706810的博客 3961

html5 拖拽删除,HTML5 - 拖拽( Drag_Drop)

HTML5 - 拖拽( Drag_Drop)拖放(DnD)是强大的用户界面概念,可以通过鼠标点击轻松复制,重新排序和删除项目。 这允许用户在元素上单击并按住鼠标按钮,将其拖动到另一个位置,然后释放鼠标按钮以将元素放在那里。要使用传统的HTML4实现拖放功能,开发人员要么必须使用复杂的JavaScript编程,要么使用其他JavaScript框架,如jQuery等。现在,HTML 5提出了一个拖...

weixin_42342032的博客 711

自制《大侠狂想曲》修改器:内存修改、加速与一键安装全攻略

游戏修改器是玩家优化游戏体验的常用工具,其核心原理是通过内存修改技术,在游戏进程运行时动态改写数值。常见实现路径是借助Cheat Engine扫描并追踪数据地址,再通过编程语言调用系统API完成读写。这种技术能有效解决重复刷资源带来的枯燥感,特别适用于单机RPG中想快速体验多剧情线却不想重刷资源的情形。本文以《大侠狂想曲》为例,完整拆解了从CE定位金钱与好感度内存地址,到编写C#脚本实现游戏加速、一键增加铜钱与NPC好感度,再到用Inno Setup打包生成一键安装器的全过程,并总结了数值弹回、剧情不触发、

weixin_30368981的博客 1479

Android oom_adj 更新原理(一)

通过之前的两篇博文《lmkd 机制详解》和《lmkd中adj score的算法剖析》中,根据计算出来的 min_score_adj 选择大于该值的 oom_adj 的进程进行 kill 处理。oom_adj 随着应用状态的不同其值也是伴随着变化的。本文将通过源码剖析 oom_adj 更新的原理。

私房菜 2657

html做拖拽删除,js利用拖放实现添加删除

本文实例为大家分享了js利用拖放实现添加删除的具体代码,供大家参考,具体内容如下实现的效果如下:代码如下:通过拖放实现添加删除div>div{display: inline-block;padding: 10px;background-color: #aaa;margin: 3px;}可将喜欢的项目拖进收藏夹疯狂Java联盟疯狂软件教育关于我们疯狂成员收藏夹 let dest=documen...

weixin_36228334的博客 609

深度解析:LPDDR5 采样 Mask 背后的秘密 —— 从 Jitter 到 BER 全面剖析

在 LPDDR5 中,CK/DQS 信号相当于“指挥棒”,而数据(DQ)要在时钟节拍里被准确采样。Crosspoint Mask 区域横轴:时间 (Time)纵轴:电压 (Vref)👉 只要采样点落在这个区域内,数据就是正确的。否则就会出错。BERPBERPMask 就像高速公路的收费站口,如果车(采样点🚗)在车道内,顺利通过;一旦跑偏,就撞护栏。LPDDR5 的速率极高,UI 非常短,Mask 区域成为核心指标各种 Jitter、Noise 会不断压缩 Mask。

weixin_43199439的博客 354

html 移除效果,HTML5 元素拖拽 移动删除效果

通过拖放实现添加、删除 div>div{display: inline-block;padding: 10px;background-color: #aaa;margin: 3px;}可将喜欢的语言拖入收藏夹JAVAPHPC++Cstyle="width:400px;height:260px;border:1px solid black;float:left;">收藏夹alt="垃圾...

weixin_33453301的博客 471

【WRFDA实操第一期】服务器中安装 WRFPLUS 和 WRFDA

【WRFDA实操第一期】安装 WRFPLUS 和 WRFDA

WW、forever的博客 2038

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

【转】 HTML5 元素拖拽 移动删除效果

<!DOCTYPE html> <html> <head> <meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" /> <meta http-equiv="Content-Type" content="text/html; charset=GBK" /> <...

weixin_34309435的博客 320

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

用HTML仿写微软官方首页,用js控制canvas实现的模仿windows上单选、多选及拖动控制的toy program...

功能包括:鼠标点击单选、拖动多选、ctrl+单击组合效果、对选中的单个或多个canvas图层通过鼠标拖动、方向键移动、delete删除图层等。感觉复杂的地方主要在控制逻辑上,下面是全部代码(带注释哦),可以直接复制保存为html文件在浏览器里查看效果varlist=[];varcurrentC;varselected=[];var_e={};varshowTimer;varkeyBoa...

weixin_35820423的博客 506

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

拖拽删除元素、拖拽排序、拖拽预览图片和拖拽移动元素

HTML5 提供了专门的拖拽与拖放的 API,目前各浏览器都已支持,包括 IE。HTML 拖放(Drag and Drop)接口使应用程序能够在浏览器中使用拖放功能。例如,用户可使用鼠标选择可拖拽(draggable)元素,将元素拖拽到可放置(droppable)元素,并释放鼠标按钮以放置这些元素。为大家准备了一个前端资料包。包含54本,2.57G的前端相关电子书,《前端面试宝典(附答案和解析)》,难点、重点知识视频教程(全套)。

老司机的后备箱 1173

移动端实现元素拖拽效果插件_拖拽功能总结

表格自适应问题通常需要给自适应表格外层添加一个类名 .table-container 的标签https://www.jianshu.com/p/1ad07fc0fc3fhttps://www.jianshu.com/p/88504a38d37b如何解决自适应表格内容过多将布局支撑乱了的情况给 table 标签加上如下 css 声明,table-layout 作用就是让表格布局固定,使得表格的宽度不...

weixin_29323365的博客 862

html5的拖拽

h5中drag事件 代替原先的mousedown mouseover mouseup事件实现完美拖拽;  拖拽事件有如下几种:dragstart,dragend,dragenter,dragover,dragleave,drop; 其中前两个事件对应的元素为拖拽元素,后面几个都是对应目标对象元素; HTML5支持拖拽数据存储,使用dataTransfer接口,作用于元素的拖拽基础

玉超 1632

html5 原生拖拽,原生JS实现拖拽效果

这篇文章主要为大家详细介绍了原生JS实现拖拽效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文实例为大家分享了JS实现拖拽效果的具体代码,供大家参考,具体内容如下想要让整个元素移动需要三个事件:鼠标按下 onmousedown鼠标移动 onmousemove鼠标抬起 onmouseuphtml登录会员关闭用户名:登录密码:登录会员JSvar login = do...

weixin_33444829的博客 308

10分钟掌握HTML拖放API!让你的网页元素瞬间拥有拖拽功能,轻松提升用户体验!

在日常开发中,拖拽功能无疑是一个常见的需求场景。为了更好地满足这一需求,HTML5提供了一套便捷的拖放API。这些API不仅能够帮助开发者轻松实现拖拽效果,还可以提高排查拖拽问题的效率,甚至可以让我们更加灵活地自定义拖拽场景和设计能力

邓占勇的博客 3070

HTML5-拖拽事件

HTML5拖拽接口:在浏览器中实现拖放。例如,用户可使用鼠标选择可拖拽(draggable)元素,将元素拖拽到可放置(droppable)元素,并释放鼠标按钮以放置这些元素。拖拽操作期间,会有一个可拖拽元素的半透明快照跟随着鼠标指针。

coral_150的博客 1404

HTML5拖拽事件

HTML5拖拽事件 1. h5拖拽和js拖拽 JS里拖拽三事件:mousedown、mousemove、mouseup 实现交互性效果,根据鼠标的移动的位置让元素联动 dv.addEventListener('mousedown', function (e) { let x = e.clientX - this.offsetLeft let y = e.clientY - this.offsetTop function handleMove(ev) { dv.s

weixin_45884143的博客 566
上一篇: Spring的组件自动扫描机制
下一篇: 正则表达式大全
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值