首页 > Web开发 > 详细

HTML拖(drag)放(drop)功能

时间:2021-02-24 10:20:30      阅读:24      评论:0      收藏:0      [点我收藏+]

HTML页面拖放功能的实现

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>drag & drop</title>
    <style>
        #div {
            width: 200px;
            height: 200px;
            border: 1px solid gray;
        }
    </style>
</head>

<body>
    <img src="./1.jpg" draggable="true" ondragstart="dragStart(event)">
    <div id="div" ondrop="drop(event)" ondragover="allowDrop(event)"></div>

    <script>
        function dragStart(e) {
            e.dataTransfer.setData("Text", "拖动传输的数据");
        }
        function drop(e) {
            e.preventDefault();
            var data = e.dataTransfer.getData("Text");
            e.target.innerText = data
        }
        function allowDrop(e) {
            e.preventDefault();
        }
    </script>
</body>

</html>

draggable

一个枚举属性,指示是否可以使用拖放API拖放元素。它可以有以下值:
true,表示该元素可以被拖动
false,表示该元素不能被拖动

ondragstart

用户开始拖动一个元素或文本选择。
e.dataTransfer.setData()方法设置被拖数据的数据类型和值

ondrop

1. 调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开)
2. 通过 dataTransfer.getData("Text") 方法获得被拖的数据。该方法将返回在 setData() 方法中设置为相同类型的任何数据

ondragover

1. ondragover 事件规定在何处放置被拖动的数据
2. 默认地,无法将数据/元素放置到其他元素中。如果需要设置允许放置,我们必须阻止对元素的默认处理方式。这要通过调用 ondragover 事件的 event.preventDefault() 方法

HTML拖(drag)放(drop)功能

原文:https://www.cnblogs.com/dibtp/p/14439466.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!