HTML 拖放API

相关文档:

https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Global_attributes/draggable

https://developer.mozilla.org/zh-CN/docs/Web/API/HTML_Drag_and_Drop_API

是否允许拖放的属性draggable

draggable属性可用于DOM标签,设置为true表示可以拖动,为false表示不可以拖动。

其false和true必须显示设置,不能省略。

简单例子:

(以vue3代码为例)

在组件中定义div标签,给标签设置draggable="true",这个div DOM就会变成能够拖拽的:

html 复制代码
<script setup lang="tsx">

</script>

<template>
  <div draggable="true">
    hello world
  </div>
</template>

其他拖放设置:

其他相关API参考下列文档:

https://developer.mozilla.org/zh-CN/docs/Web/API/HTML_Drag_and_Drop_API

通过绑定事件的形式,给DOM添加事件,可以改变DOM元素在拖拽时的表现:

以dragend为例,dragend在元素拖拽操作结束时触发,比如我想在div拖拽结束时,弹出alert弹框:

html 复制代码
<script setup lang="tsx">
const dragend = ()=>{
  alert('dragend')
}
</script>

<template>
  <div 
    draggable="true"
    @dragend="dragend"
  >
    hello world
  </div>
</template>

拖拽结束,放开鼠标的时候会显示弹框:

相关推荐
FlyWIHTSKY5 分钟前
Vue 3 单文件组件加载顺序详解
前端·javascript·vue.js
周万宁.FoBJ7 分钟前
vue源码讲解之 reactive解析(仅proxy部分)
开发语言·javascript·ecmascript
乔磊8 分钟前
我开发了一个 Ralph CLI
javascript
霪霖笙箫12 分钟前
真授之以渔:我是怎么从"想给文章配几张图",一步步做出一个可发布 skill 的
前端·人工智能·开源
yzin15 分钟前
【源码】【react】useCallback、useMemo、memo 原理
前端·react.js
CHU72903515 分钟前
扭蛋机盲盒小程序前端功能设计及核心玩法介绍
前端·小程序
进击的尘埃16 分钟前
Module Federation 2.0 共享策略翻车实录:版本协商、热更新与依赖冲突的排查工具链
javascript
毛骗导演18 分钟前
OpenClaw Gateway RPC 运行时:一个 WebSocket 协议引擎的深度解剖
前端·架构
码路飞19 分钟前
不会 Rust 也能玩 WebAssembly:3 个 npm install 就能用的 WASM 神器
前端·javascript·webassembly