返回顶部
首页 > 资讯 > 前端开发 > JavaScript >HTML5实现元素拖拽的方法
  • 745
分享到

HTML5实现元素拖拽的方法

2024-04-02 19:04:59 745人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关HTML5实现元素拖拽的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先上示例:index.htmlXML/HTML Code复制内容到剪

这篇文章将为大家详细讲解有关HTML5实现元素拖拽的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

先上示例:

index.html

XML/HTML Code复制内容到剪贴板

  1. <!doctype html>  

  2. <html>  

  3. <head>  

  4.     <meta charset="UTF-8">  

  5.     <title>Drag</title>  

  6.     <style>  

  7.         .box{   

  8.             width: 400px;   

  9.             height: 400px;   

  10.             float: left;   

  11.         }   

  12.         #box1{   

  13.             background: #CCC;   

  14.         }   

  15.         #box2{   

  16.             background: #FF0;   

  17.         }   

  18.     </style>  

  19. </head>  

  20. <body>  

  21. <div id="box1" class="box"></div>  

  22. <div id="box2" class="box"></div>  

  23. <img src="/file/imgs/upload/202210/19/mpozqljkjoy.jpg" alt="" id="img1" />  

javascript Code复制内容到剪贴板

  1. <script src="app1.js"></script>   

  2. </body>   

  3. </html>   

  4.   

  5. app1.js   

  6.   

  7.   

  8. var oBox1,   

  9.     oBox2,   

  10.     oImg1;   

  11.   

  12. window.onload = function(){   

  13.     oBox1 = document.getElementById('box1');   

  14.     oBox2 = document.getElementById('box2');   

  15.     oImg1 = document.getElementById('img1');   

  16.   

  17.     //   

  18.     oBox1.ondraGover = oBox2.ondragover = function(e){   

  19.         e.preventDefault();   

  20.     };   

  21.   

  22.     //   

  23.     oImg1.ondragstart = function(e){   

  24.         e.dataTransfer.setData('text', e.target.id);   

  25.     };   

  26.   

  27.     oBox1.ondrop = dropImg;   

  28.     oBox2.ondrop = dropImg;   

  29. };   

  30.   

  31. function dropImg(e){   

  32.     e.preventDefault();   

  33.     var tempImg = document.getElementById(e.dataTransfer.getData('text'));   

  34.     e.target.appendChild(tempImg);   

  35. }    

涉及知识点

在拖放的过程中会触发以下事件:
在拖动目标上触发事件 (源元素)
  ondragstart - 用户开始拖动元素时触发
  ondrag - 元素正在拖动时触发
  ondragend - 用户完成元素拖动后触发

释放目标时触发的事件
  ondragenter - 当被鼠标拖动的对象进入其容器范围内时触发此事件
  ondragover - 当某被拖动的对象在另一对象容器范围内拖动时触发此事件
  ondragleave - 当被鼠标拖动的对象离开其容器范围内时触发此事件
  ondrop - 在一个拖动过程中,释放鼠标键时触发此事件

event对象(以e代替)

e.target

  W3Cschool上的解释是:返回触发此事件的元素(事件的目标节点),这个target属性只兼容ie9及以上

e.preventDefault()

  取消事件的默认动作。

e.dataTransfer.setData()

  设置被拖数据的数据类型和值:

代码如下:

e.dataTransfer.setData("Text",ev.target.id);       //第一个参数为Text(小写的也行)

e.dataTransfer.getData()

  获得被拖的数据:

代码如下:

e.dataTransfer.getData("Text");

关于“HTML5实现元素拖拽的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: HTML5实现元素拖拽的方法

本文链接: https://lsjlt.com/news/70025.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • HTML5实现元素拖拽的方法
    这篇文章将为大家详细讲解有关HTML5实现元素拖拽的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先上示例:index.htmlXML/HTML Code复制内容到剪...
    99+
    2024-04-02
  • Vue实用功能之实现拖拽元素、列表拖拽排序
    目录Vue实现拖拽元素、列表拖拽排序组件使用补充:排序动画总结Vue实现拖拽元素、列表拖拽排序 需求:    1、左右两个容器,左边和右边的元素可以拖动...
    99+
    2022-11-13
    vue列表拖拽排序 vue实现拖拽功能 vue实现组件拖拽
  • 如何实现html元素拖拽功能
    这篇文章主要讲解了“如何实现html元素拖拽功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现html元素拖拽功能”吧!1.创建拖拽对象 我们可以通...
    99+
    2024-04-02
  • vue怎么实现拖拽元素功能
    这篇“vue怎么实现拖拽元素功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue怎么实现拖拽元素功能”文章吧。示例代码如...
    99+
    2023-07-04
  • html5如何实现拖拽
    这篇文章主要介绍了html5如何实现拖拽,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。html5实现拖拽的方法:首先新建一个空的HTML5结构;然后在body元素中放置一个d...
    99+
    2023-06-15
  • vue3实现手机上可拖拽元素的组件
    前言: 用vue3实现一个可在手机上拖拽元素的组件,可拖拽至任意位置,并且可以防止拖拽元素移出屏幕边缘。 <script setup> import { ref } fr...
    99+
    2024-04-02
  • Nodejs+express+html5 实现拖拽上传
    一、前言 文件上传是一个比较常见的功能,传统的选择方式的上传比较麻烦,需要先点击上传按钮,然后再找到文件的路径,然后上传。给用户体验带来很大问题。html5开始支持拖拽上传的需要的api。nodejs也是一...
    99+
    2022-06-04
    拖拽 上传 Nodejs
  • HTML5怎么实现拖拽预览
    本篇内容主要讲解“HTML5怎么实现拖拽预览”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“HTML5怎么实现拖拽预览”吧!源码<!DOCTYPE ...
    99+
    2024-04-02
  • JS实现拖拽进度条改变元素透明度
    今天要分享的是运用原生JS拖拽进度条改变元素透明度,效果如下: 以下是代码实现,欢迎大家复制粘贴。 <!DOCTYPE html> <html> &...
    99+
    2024-04-02
  • Vue实现可拖拽组件的方法
    本文为大家分享了Vue实现可拖拽、拖拽组件,供大家参考,具体内容如下 描述: 组件仅封装拖拽功能,内容通过#header、#default、#footer插槽 自定义 效果:&nbs...
    99+
    2024-04-02
  • vue实现拖拽进度条的方法
    本文将为大家详细介绍“vue实现拖拽进度条的方法”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“vue实现拖拽进度条的方法”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知识吧...
    99+
    2023-06-06
  • vuejs2.0运用原生js如何实现拖拽元素功能
    这篇文章将为大家详细讲解有关vuejs2.0运用原生js如何实现拖拽元素功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。示例如下:<!DOCTYPE h...
    99+
    2024-04-02
  • html5实现拖拽上传图片功能
    这篇文章主要讲解了“html5实现拖拽上传图片功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“html5实现拖拽上传图片功能”吧! ...
    99+
    2024-04-02
  • 如何使用HTML5实现拖拽功能
    这篇文章给大家分享的是有关如何使用HTML5实现拖拽功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   问题:突然奇想,想在电影网上加一个收藏(类似于购物车的东西),可以通...
    99+
    2024-04-02
  • 如何使用Vue3实现一个飘逸元素拖拽功能
    这篇文章主要介绍了如何使用Vue3实现一个飘逸元素拖拽功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用Vue3实现一个飘逸元素拖拽功能文章都会有所收获,下面我们一起来看看吧。推荐几个好用的工具var-...
    99+
    2023-07-05
  • 怎么使用Vue3实现一个飘逸元素拖拽功能
    这篇文章主要介绍了怎么使用Vue3实现一个飘逸元素拖拽功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Vue3实现一个飘逸元素拖拽功能文章都会有所收获,下面我们一起来看看吧。进入正题元素拖拽是一个比较...
    99+
    2023-07-06
  • vue实现可拖拽div大小的方法
    下面看下vue中可拖拽div大小的方法。 可封装为全局方法在项目中所需要地方直接调用(mixins) 方法: 参数: 1.allBox:最外层第div class;2.leftBox...
    99+
    2024-04-02
  • JavaScript实现拖拽排序的方法详解
    目录实现原理概述代码实现完整代码实现可拖拽排序的菜单效果大家想必都很熟悉,本次我们通过一个可拖拽排序的九宫格案例来演示其实现原理。 先看一下完成效果: 实现原理概述 拖拽原理 当鼠...
    99+
    2024-04-02
  • 如何使用HTML5实现网页元素的拖放操作
    这篇文章将为大家详细讲解有关如何使用HTML5实现网页元素的拖放操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。场景:如下图所示,我们要实现:通过拖放将照片从左侧“相册...
    99+
    2024-04-02
  • 将HTML5元素定义为块元素的方法
    本篇内容介绍了“将HTML5元素定义为块元素的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!将 HTM...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作