【HTML5】拖放详解及实现案例

文章目录

    • 效果预览
    • 代码实现

效果预览

在这里插入图片描述

代码实现

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>一颗不甘坠落的流星</title><style>#div1,#div2 {float: left;width: 100px;height: 27px;margin: 10px;padding: 24px 0;text-align: center;border: 1px solid #aaaaaa;}span {display: inline-block;width: 50px;height: 25px;background-color: greenyellow;}</style></head><body><!-- 4. ondragover 事件规定被拖动的数据能够被放置到何处。 --><!-- 6. 当放开被拖数据时,会发生 drop 事件。 --><div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"><!-- 1. 为了把一个元素设置为可拖放,请把 draggable 属性设置为 true --><!-- 2. ondragstart 属性调用了一个 drag(event) 函数,规定拖动什么数据。 --><span draggable="true" ondragstart="drag(event)" id="drag1"></span></div><div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"></div></body><script type="text/javascript">function allowDrop(ev) {// 5. 默认地,数据/元素无法被放置到其他元素中。// 为了实现拖放,我们必须阻止元素的这种默认的处理方式。// 由 ondragover 事件的 event.preventDefault() 方法完成ev.preventDefault();}function drag(ev) {// 3. dataTransfer.setData() 方法设置被拖动数据的数据类型和值// 在本例中,数据类型是 "text",而值是这个可拖动元素的 id ("drag1")。ev.dataTransfer.setData("Text", ev.target.id);}function drop(ev) {// 调用 preventDefault() 来阻止数据的浏览器默认处理方式(drop 事件的默认行为是以链接形式打开)ev.preventDefault();通过 dataTransfer.getData() 方法获得被拖的数据。该方法将返回在 setData() 方法中设置为相同类型的任何数据var data = ev.dataTransfer.getData("Text");// 被拖数据是被拖元素的 id ("drag1")var span = document.getElementById(data)// 把被拖元素追加到放置元素中ev.target.appendChild(span);}</script>
</html>

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

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

相关文章

Echarts中饼状图label标签文本重叠

解决方式&#xff1a; 1. 未使用formatter&#xff0c;不使用formatter的情况下label重叠主要是没有设置 第一步&#xff1a;调整fontSize文字的显示大小&#xff0c;字越小就越不会重叠&#xff1b; 第二步&#xff1a;设置最小扇区角度&#xff0c;minAngle&#xff08;最小…

关于 Qt在windows使用mingw32编译器时从Qt5.9切换至Qt5.12出现“C2001:常量中有换行符“不修改编码 的解决方法

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/131901444 红胖子(红模仿)的博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

vue事件绑定、事件参数、事件修饰符、表单双向绑定、监听器、计算属性

目录 事件绑定 事件参数 事件修饰符 表单 watch(监听器 监听属性) computed&#xff08;计算属性&#xff09; 面试题 事件机制 概述 在dom阶段&#xff0c;我们已经讲述了事件机制的特点&#xff1a; 事件三要素 事件绑定 事件流 事件对象 事件代理 事件类型 这些…

大语言模型分词的 chunk_size 和 chunk_overlap 说明和验证

大语言模型分词的 chunk_size 和 chunk_overlap 1. 什么是 chunk_size 和 chunk_overlap2. 实际验证 1. 什么是 chunk_size 和 chunk_overlap 对于大型语言模型如GPT-3等来说,chunk_size和chunk_overlap通常指的是文本序列的切分参数: chunk_size: 对输入文本序列进行切分的最…

Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

day33哈希表

1.哈希表 常见的哈希表分为三类&#xff0c;数组&#xff0c;set&#xff0c;map&#xff0c;C语言的话是不是只能用数组和 2.例题 题目一&#xff1a; 分析&#xff1a;题目就是判断两个字符串出现的次数是否相同&#xff1b; 1&#xff09;哈希表26个小写字母次数初始化为0&…

RB-tree(红黑树)详解

RB-tree(红黑树) 红黑树的规则如下&#xff1a; 1.每个节点不是红色就是黑色 2.根节点为黑色 3.如果节点为红色&#xff0c;那么它的子节点必须为黑色 4.任何一个节点到NULL&#xff08;树的尾端&#xff09;的任何路径所包含的黑节点个数相同 简而言之就是每个路径的黑色节点数…

模拟量输出FC S_RTI(信捷C语言源代码)

模拟量输出FC SCL源代码请查看下面博客: PLC模拟量输出 模拟量转换FC S_RTI_博途模拟量转换指令_RXXW_Dor的博客-CSDN博客1、本文主要展示西门子博途模拟量输出转换的几种方法, 方法1:先展示下自编FC:计算公式如下:intput intput Real ISH Real //工程量上限 ISL Real //工…

Linux软件包管理工具-dpkg

目录 前言 一、什么是.deb 二、安装软件包 三、卸载软件包 四、查询软件包状态 五、查询已安装的软件包列表 六、解决依赖问题 前言 dpkg是Debian和Ubuntu等Linux发行版中用于管理软件包的基本包管理工具 dpkg的一些常用命令&#xff0c;通过这些命令&#xff0c;你可…

【数据挖掘】将NLP技术引入到股市分析

一、说明 在交易中实施的机器学习模型通常根据历史股票价格和其他定量数据进行训练&#xff0c;以预测未来的股票价格。但是&#xff0c;自然语言处理&#xff08;NLP&#xff09;使我们能够分析财务文档&#xff0c;例如10-k表格&#xff0c;以预测股票走势。 二、对自然语言处…

智能柜台配置项配置指南

1.全局配置config.xml 配置项说明 <configuration><param key="env" value="production" display=""/> </configuration>root节点:configuration 配置节点:param 配置项名:param 的 key属性配置项值:param 的 value属性配…

【OpenCV】常见问题及解决办法

文章目录 0 前言1 中文乱码问题2 非法路径问题 0 前言 本篇博客主要是总结OpenCV使用过程中遇到的一些问题&#xff0c;以及对应的解决办法&#xff0c;这里重点是关注OpenCV&#xff0c;既有基于C的&#xff0c;也有基于Python的&#xff0c;比较全面&#xff0c;而且也会随着…

【Linux后端服务器开发】TCP通信设计

目录 一、TCP通信协议的封装 二、TCP多进程通信 三、TCP多线程通信 一、TCP通信协议的封装 简单的TCP一对一通信其实完全可以不进行封装&#xff0c;直接分别写server端和client端的源代码&#xff0c;按照TCP通信协议的规定调用socket接口即可完成&#xff0c;但是在通过T…

RocketMQ教程-安装和配置

Linux系统安装配置 64位操作系统&#xff0c;推荐 Linux/Unix/macOS 64位 JDK 1.8 Maven3.0 yum 安装jdk8 yum 安装maven 1.下载安装Apache RocketMQ RocketMQ 的安装包分为两种&#xff0c;二进制包和源码包。 点击这里 下载 Apache RocketMQ 5.1.3的源码包。你也可以从这…

Windows11的VS201x编译OpenCV+Contrib+CUDA

(1) CUDA下载&#xff0c;注意要和cudnn版本号相关。 我安装的是cuda11.0,注意VS2015不能编译CUDA11&#xff0c;所以用VS2015的话需要下载CUDA 10。因为更高的版本目前还没有cudnn。 (2) 下载和安装VS2015。 (3) 下载和解压CMake。 CMake地址&#xff1a; Releases Kitw…

Nginx代理nginx.conf配置——nginx对静态文件代理

1. 对根目录下的静态资源代理 Nginx代理nginx.conf配置——反向代理 2. 目录代理 如果需要将资源代理到不同的目录下&#xff0c;则在nginx.conf中的server节点下进行如下配置&#xff1a; location /image {root /opt/cache; }location vedio {root /opt/cache; } 修改后…

Android dp to pix resources.getDimension(R.dimen.xxx) ,kotlin

Android dp to pix resources.getDimension(R.dimen.xxx) ,kotlin <?xml version"1.0" encoding"utf-8"?> <resources><dimen name"my_size_dp">20dp</dimen><dimen name"my_size_px">20px</dime…

【微信小程序】从网络请求返回值res.data获取并解析一个Array

在微信小程序中&#xff0c;可以通过res.data获取到请求返回的数据。如果返回的数据是一个数组&#xff0c;您可以直接对其进行操作。 以下是一个示例代码&#xff0c;演示了如何从res.data中解析一个数组&#xff1a; wx.request({url: http://yuor-api:80/device/_query/no…

双线性插值算法缩放图片,部分图片出现黑边的解决办法

因工作需要使用软件方法缩放PNG图片&#xff0c;询问chatgpt拿到了c双线性插值算法&#xff0c;开始很顺利&#xff0c;整理一下代码&#xff0c;封装一下接口&#xff0c;就可以使用了&#xff0c;效果还不错&#xff0c;马上编译发给测试组测试&#xff0c;测试发现有一些图片…

数据仓库表设计理论

数据仓库表设计理论 数仓顾名思义是数据仓库&#xff0c;其数据来源大多来自于业务数据(例如:关系型数据库)&#xff0c;当设计数仓中表类型时(拉链表、增量表、全量表、流水表、切片表)时&#xff0c;应先观察业务数据的特点再设计数仓表结构 首先业务数据是会不断增长的-即…