HTML5中 drag 和 drop api

news/2024/11/19 19:44:15/文章来源:https://www.cnblogs.com/Allie57/p/18195810

被拖放元素 -- A,目标元素 -- B。

  • dragstart 事件主体是A,在开始拖放A时触发。
  • dragend 事件主体是A,在整个拖放操作结束时触发。
  • drag 事件主体是A,正在拖放A时触发(整个拖拽,drag事件会在被拖拉的节点上持续触发,相隔几百毫秒)。
  • dragenter 事件主体是B,在A进入某元素的时候触发。
  • dragover 事件主体是B,在被拖放在某元素内移动是触发。
  • dragleave 事件主体为B,在A移出B时触发。
  • drop 事件主体是B,在B完全接受A时触发。

要将A的draggable属性设置为true

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8"> 
<title>菜鸟教程(runoob.com)</title>
<style type="text/css">
#div1 {width:350px;height:80px;padding:10px;border:1px solid #aaaaaa;}
</style>
<script>
function allowDrop(ev)
{ev.preventDefault();
}function drag(ev)
{ev.dataTransfer.setData("Text",ev.target.id);
}function drop(ev)
{ev.preventDefault();var data=ev.dataTransfer.getData("Text");ev.target.appendChild(document.getElementById(data));
}
</script>
</head>
<body><p>拖动 RUNOOB.COM 图片到矩形框中:</p><div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
<br>
<img id="drag1" src="/images/logo.png" draggable="true" ondragstart="drag(event)" width="336" height="69"></body>
</html>

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一些不错的地理题

2022年福建高考与土壤联系最密切的应该是植被 所以AB选项直接排除 然后的话30度的时候为什么大幅上升呢,主要是因为青藏高原 所以通过尺度也可以做这个题 10度的纬度,算是一个中等的尺度,而不应该是土壤植被这种小尺度大题意义类要去找主体、找问题 对你的意义 对我的意义 对…

项目管理之八大绩效域-------笔记(二)

八大绩效域详细解析 18.1 干系人绩效域跟干系人所有相关的活动.一、预期目标①与干系人建立高效的工作关系②干系人认同项目目标③支持项目的干系人提高了满意度,并从中收益④反对项目的干系人没有对项目产生负面影响三四是一个意思,就是支持你的人更支持你,反对你的人没有负面…

【日记】跟奇安信斗智斗勇,败下阵来(416 字)

正文今天一个客户都没有,让我快怀疑我们银行是不是要倒闭了……因为内外网 u 盘不知所踪,所以重新制了一个。深刻体会到了奇安信有多烂。有两个 u 盘,奇安信似乎把主控写坏了,插上电脑有反应,但是看不见盘符,磁盘管理也看不到。另一个也是这样,但后面莫名其妙好了。Wind…

DNS 的层级结构和分层结构是怎样的?

DNS(Domain Name System,域名系统)是互联网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。 DNS采用分层结构的原因主要有以下几点: 分层结构使得DNS系统能够轻松扩展,以容纳…

【吐槽】今天才发现PyCharm不支持对Python脚本进行块注释

在PyCharm中对Python脚本Ctrl + Shift + /进行块注释不起作用,然后使用OpenArk64查看是否热键占用冲突,没有发现其他占用。 然后发现PyCharm中Code菜单项下的选项Comment with Block Comment是灰色的。 又查了下,最后发现jetbrains官方帮助文档中已说明PyCharm不支持对Pytho…

three.js基础之mesh属性

mesh之位置、缩放、平移、旋转属性 <canvas id="mesh-properties"></canvas> <script type="importmap">{"imports": {"three": "./js/build/three.module.js","three/addons/": "./js/js…

Linux平台移植音频芯片实战记录

本文详细记录在NXP I.MX6ULL+Linux平台下进行WM8960音频芯片移植的过程,其他平台操作方法类似,希望为大家提供帮助。本文详细记录在NXP I.MX6ULL+Linux平台下进行WM8960音频芯片移植的过程,其他平台操作方法类似,希望为大家提供帮助。 1. 环境准备 平台: HD6ULL-IOT开发板 …

shared_ptr的概念和一些特性调查

shared_ptr 概念 shared_ptr 是 C++11 中引入的一种智能指针,用于自动管理资源,特别是动态分配的内存。它属于 头文件中定义的智能指针类之一,用于解决动态内存分配中的内存泄漏和资源生命周期管理问题。shared_ptr 通过引用计数机制来实现多个 shared_ptr 实例共享同一资源…

SIEM

背景和介绍 SIEM(Security Information and Event Management,简称SIEM)安全信息和事件管理,最初是被设计为一个工具,辅助企业实现合规和特定行业的规定。从时间维度上讲,SIEM是已经存活了近20年的技术。 其结合安全信息管理(security information management, SIM)和安…

七牛云文件批量上传加单个上传和下载

第一步: 先在七牛云官网注册一个账号 然后点击对象存储-空间管理-新建空间 创建一个存储空间创建好之后就完成了第一步 可以往里面放东西了 第二步: 打开你的VS 创建一个类 改成静态类 方便外部调用 写一个静态的方法/// <summary>/// 上传文件类/// </summary&g…

vue3 ts 集成 tinymce

首先引入 @tinymce/tinymce-vueyarn add @tinymce/tinymce-vue -S 我的版本是 然后写一个组件<template><main id="sample"><Editor v-model="editorData" api-key="j7tvgx4xnptg3cjd63cfnl62z9s78uylw4o7vkkwdljjy91e" :init=…