JS基础_拖拽(一)

web前端实例:JS鼠标拖拽效果 JavaScript 鼠标拖拽效果是一种常见的交互技术,通过监听鼠标事件和操作元素的位置来实现用户拖拽元素的功能。 该技术的实现原理包括鼠标事件的监听、确定拖拽对象、跟随鼠标移动以及释放拖拽对象。具体实现中,需要考虑事件监听、元素定位、位置计算等技术要点,并注意边界控制、性能优化和兼容性问题。 触摸事件与鼠标事件相比,具有不同的触发方式、事件对象和适用性,更适用于移动设备和平板电脑等触摸屏设备。 阅读详情
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			
			#box1{
				width: 100px;
				height: 100px;
				background-color: red;
				position: absolute;
			}
			
			#box2{
				width: 100px;
				height: 100px;
				background-color: yellow;
				position: absolute;
				
				left: 200px;
				top: 200px;
			}
			
		</style>
		
		<script type="text/javascript">
			
			window.onload = function(){
				/*
				 * 拖拽box1元素
				 *  - 拖拽的流程
				 * 		1.当鼠标在被拖拽元素上按下时,开始拖拽  onmousedown
				 * 		2.当鼠标移动时被拖拽元素跟随鼠标移动 onmousemove
				 * 		3.当鼠标松开时,被拖拽元素固定在当前位置	onmouseup
				 */
				
				//获取box1
				var box1 = document.getElementById("box1");
				//为box1绑定一个鼠标按下事件
				//当鼠标在被拖拽元素上按下时,开始拖拽  onmousedown
				box1.onmousedown = function(event){
					event = event || window.event;
					//div的偏移量 鼠标.clentX - 元素.offsetLeft
					//div的偏移量 鼠标.clentY - 元素.offsetTop
					var ol = event.clientX - box1.offsetLeft;
					var ot = event.clientY - box1.offsetTop;
					
					
					//为document绑定一个onmousemove事件
					document.onmousemove = function(event){
						event = event || window.event;
						//当鼠标移动时被拖拽元素跟随鼠标移动 onmousemove
						//获取鼠标的坐标
						var left = event.clientX - ol;
						var top = event.clientY - ot;
						
						//修改box1的位置
						box1.style.left = left+"px";
						box1.style.top = top+"px";
						
					};
					
					//为document绑定一个鼠标松开事件
					document.onmouseup = function(){
						//当鼠标松开时,被拖拽元素固定在当前位置	onmouseup
						//取消document的onmousemove事件
						document.onmousemove = null;
						//取消document的onmouseup事件
						document.onmouseup = null;
					};
				};
				
				
				
				
			};
			
			
		</script>
	</head>
	<body>
		<div id="box1"></div>
		
		<div id="box2"></div>
	</body>
</html>

 

three.js 指定在某一平面上拖拽。拖拽吸附在某个平面 使用的api DragControls 该接口作用为:拖拽时会在摄像机视角垂直的平面上移动,即以摄像机视角方向为法向量的一个平面。 它是如何实现的在摄像机对着的屏幕移动的 文件位置:three/examples/jsm/controls/DragControls 内部代码 //新建一个平面 const _plane = new Plane(); ... //鼠标按下 function onPointerDown( event ){ ... //设置平面的法向量和点 //将摄像机(_camera)的世界 阅读详情

相关推荐

JavaScript:鼠标拖拽事件案例

JavaScript:鼠标拖拽事件案例

零小唬的博客 497

JavaScript基础(32)_拖拽、鼠标移动事件

JS拖拽、鼠标移动事件

no15870678621的博客 1529

【朝夕教育】2023年09月 WPF+上位机+工业互联 043-鼠标事件和拖拽事件

鼠标事件是指与鼠标或类似的指针设备相关联的事件,例如鼠标点击、双击、鼠标移动、鼠标滚轮滚动等。这些事件可以被用于实现交互式网页,使用户与网页进行更为直接和自然的交互。拖拽事件是指在网页中拖动元素时触发的事件。通过鼠标或触摸屏幕,用户可以将网页中的元素拖动到其他位置或拖动到其他应用程序中。拖拽事件包括拖动开始、拖动进入目标区域、拖动离开目标区域、拖动结束等事件。通过拖拽事件,网页可以实现更加灵活和直观的用户交互方式。

微软MVP Eleven 313

js基础 — 简单易懂,拖拽事件(一)

此时onmouseup事件绑定给box1,当你往下拖 box1 的时候 ,即box2在上box1在上方的时候,你的鼠标在box2上,触发的是box2的onmouseup。这时有人会说冒泡事件不行吗?所以事件不能给box1绑定了要给document绑定onmouseup事件!下面修改下代码:onmouseup事件不能给box1绑定,要给document绑定onmouseup事件!点击鼠标拖拽box1后:此时有个小bug , 你点击box1之后,box1盒子粘到鼠标上,丢不掉了!

qq_53895518的博客 1049

Fastp实战指南:高效处理fastq数据的质控技巧

本文是Fastp实战指南,详细介绍了如何使用Fastp工具高效处理fastq数据的质控技巧。从数据清洗的必要性、基础命令解析,到高级参数定制、UMI数据处理及批量自动化流程,提供一站式解决方案。Fastp以其“All-in-One”的快速质控能力,帮助用户确保测序数据质量,为后续生物信息学分析奠定可靠基础。

weixin_29254029的博客 389

保姆级教程:用YOLOv8n模型在RKNN和Horizon平台完成目标检测(附C++部署代码与性能实测)

本文提供了一份详尽的YOLOv8n模型在RKNN和Horizon平台上的部署指南,涵盖环境配置、模型优化、跨平台适配及性能调优。通过实战案例和C++部署代码,帮助开发者在嵌入式设备上高效实现目标检测,显著提升推理性能。

weixin_42659194的博客 468

JavaScript拖拽图片一

本文演示如何将一张图片用鼠标拖拽到某个位置。 先看html代码: [html] view plaincopyprint? html>     head>       title>drag demotitle>       script src="js/drag.js" type="text/javascript">script>     head>

AlexWang 692

DELL SC存储扩容避坑指南:6Gb vs 12Gb扩展柜混插的真相

本文深入解析DELL SC存储扩容中6Gb与12Gb扩展柜混插的核心规则与性能影响。文章指出,从SCOS 7.3版本起允许混插,但整个SAS环路速率将降至最低设备水平,尤其在12Gb控制器上接入6Gb扩展柜会严重拖累性能。指南提供了清晰的兼容性矩阵、实战操作流程及关键避坑清单,帮助管理员安全、高效地完成存储扩容。

weixin_28314575的博客 458

javascript之拖拽(一)

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> #box1{ width:100px; height:100px; background-color:red; position:absolute; } #box2{

Eluckburlkmotion的博客 174

用App Inventor做个蓝牙温湿度计,手机自动连Arduino,5分钟搞定硬件数据上屏

本文详细介绍了如何使用App Inventor和Arduino快速搭建一个蓝牙温湿度监测系统,实现手机自动连接并显示实时数据。通过图形化编程和硬件组装指南,零代码基础的用户也能在5分钟内完成硬件数据上屏,适用于智能家居、教学演示等多种场景。

weixin_30813225的博客 171

Matplotlib之bar3d画3D柱状图

3D柱状图通常用于展示数据集中不同分类项的数据大小或数量。与普通的柱状图相比,3D柱状图更适合展示数据的三个维度 3D 柱状图 按行/列涂颜色 柱加阴影、描黑边 自定义座标轴名、刻度标签、范围

我走的每一步都算数 1121

js基础拖拽一

var oDiv= document.getElementById("div"); oDiv.onmousedown= function(e){ var _this = this; var e= e || window.event; var diffX= e.clientX - _this.offsetLeft; var diffY= e.clientY...

aomenglong0411的博客 200

西门子PLC编程之⑦编程开始之点位配置及注释

紧接上篇,点位梳理后,进入PLC编程。1、新建工程,配置系统模块2、配置I点并做中文符合,直接上中文,smart支持中文点位编程,用起来很方便。3、配置Q点并做中文符合5、配置AIW模拟量输入点,配置AQW模拟量输出点并做中文符合6、配置手动启动辅助触点,并做中文符合7、 配置自动启动辅助触点,并做中文符合8、 配置传感器浮点型数据变量点位,并做中文符合9、配置系统运行参数设置区点位,做中午符合,做掉电保持.....................

学技术,人生不误——谁也是寂寞宇宙里的流星,只是你的坚持决定了你划过的痕迹。而且,铸造了普遍里的你的唯一。 4889

JavaScript拖拽(一):简单拖拽

JS拖拽 onmousedown事件 onmousemove事件 onmouseup事件 getStyle和offsetLeft、offsetTop

郭宇的博客 717

C#对接EtherNet/IP协议 完整版|罗克韦尔AB PLC通信+CIP核心概念全解析

你做罗克韦尔(AB) PLC工业上位机开发,是唯一的首选协议,没有之一!EtherNet/IP(Ethernet Industrial Protocol)是基于标准以太网的工业级通信协议,由罗克韦尔自动化主导开发,是ODVA(开放设备网络供应商协会)主推的工业以太网标准,也是目前全球应用最广泛的工业以太网协议之一。原生适配罗克韦尔AB PLC:Micro800、CompactLogix、ControlLogix、Micro850等全系AB PLC原生标配EtherNet/IP,无需额外配置,开箱即用;

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 890

自动驾驶---Planning模块详细介绍(以Apollo为例)

主要介绍高速场景下Planning模块,至于低速的泊车场景对比高速场景或者城区场景有比较大的差距(后面也会介绍泊车场景),本篇Planning介绍主要包括三大子模块Routing,Behavioural Planning以及Motion Planining,并且对比较重要的Decider和Optimizer都做了通俗化的说明供大家思考,以便于后续理解更深入的内容,后面有时间会再开一些篇幅对这些模块进行更加深入的讲解。

智能汽车人的博客 2085

再谈js拖拽(一)

关于js拖拽早已是老生常谈,网上一搜一大坨,但是有很多并不是很完善,或者兼容性不够,或者功能不全,并且这样的东西还是自己写的好用。我打算在(一)中主要对js拖拽功能的注意点进行罗列,力求简单;在(二)中利用(一)的拖拽去实现类似google个性化首页的拖拽模块功能。   首先贴上完整code(IE/FF) 代码 <!DOCTYPE html PUBLIC "-//W...

angqiufeng2461的博客 132

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

JavaScript拖拽详解(一)基础简介

文章目录拖拽的历史画一张流程图要点概括总结一共有哪些事件哪些实体可以被拖关于放,有哪些限制?拖放会冒泡嘛?小结 人类喜欢将自然界的事物步骤化,第一步干什么,第二步再做什么,甚至第三部等等。 一个作家构思一部鸿篇巨制,必然要考虑将内容划分为几个部分,每个部分刻画相应的人物背景故事. 同理,拖拽也一样,分为 拖、放两个步骤,本文将以两个步骤为基础讨论拖拽. 拖拽的历史 web开发中的拖拽标准是在H...

anderlaw的博客 413

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

案例一:javascript的拖拽事件(drag,drop)

一、拖拽效果如下步骤所示 1.正常的排序如下: 2.拖拽列表1与列表2互换位置 常按的效果如下图: 切换位置后的效果如下图: 二、具体代码如下 1.HTML部分代码块 2.javascript部分代码块 3.js代码说明: 总结:下面的🔗是跳转到案例二(关于 表格的拖拽的效果)

weixin_46022934的博客 4911

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

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

简易而又灵活的Javascript拖拽框架(一)

一、开篇最近在做js拖拽的时候,发现了一个强大而又灵活的拖拽框架,(之前用了代码混淆器,还好代码比较短,我就翻译过来了)利用这个框架不仅能实现简单的拖动,更能轻易的实现各种复杂的拖放功能。这一篇先实现最简单的拖拽,稍微复杂的拖放将在后面的文章里写出来。二、代码先把代码贴出来CodeCode highlighting produced by Actipro CodeHighl

lx251845027的专栏 839

js拖拽(一)

关于js拖拽早已是老生常谈,网上一搜一大坨,但是有很多并不是很完善,或者兼容性不够,或者功能不全,并且这样的东西还是自己写的好用。我打算在(一)中主要对js拖拽功能的注意点进行罗列,力求简单;在(二)中利用(一)的拖拽去实现类似google个性化首页的拖拽模块功能。   首先贴上完整code(IE/FF/Chrome)   代码 DOCTYPE html PUBLIC "-//

smshuxue的专栏 693

Sortable.js:功能强大的JavaScript 拖拽库

Sortable.js:功能强大的JavaScript 拖拽库

流绪@微梦 1万+
上一篇: List转数组:java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
下一篇: JS基础_拖拽(二)
ZHOU_VIP
博客等级 码龄11年 1万+粉丝 1779原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZHOU_VIP

您的鼓励将是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值