首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

原生JS快速实现拖放(drag and drop)效果

拖放是很常见的一种交互效果,很多时候我们都会借助于第三方的控件来实现,其实用原生js实现起来也非常的方便。...图片来源于https://source.unsplash.com/的随机图片;2. .dragging为draggable元素正在被拖动的状态,增加黄色border;3. .drag-over为draggable...JS 最后,我们需要通过js监听draggable和droppable的相关的事件。...dragleave', dragLeave); droppable.addEventListener('dragenter', dragEnter); droppable.addEventListener('drop...在dragEnter和dragOver方法中我们需要通过preventDefault来取消事件以表明容器是一个合法的droppable元素,不然容器的drop事件将无法触发,接下来的操作也将无法进行,详细解释请参考

3.5K51
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JavaScript 学习-50.实现页面菜单拖放(DragDrop

    拖放(DragDrop) 在拖曳操作中,被拖曳的元素称做源对象,是指页面中设置了draggable=”true”属性的元素;源对象进入的元素称作目标元素,目标元素可以是页面的任一元素。...在上面的例子中,ondragstart 属性调用了一个 drag(event) 函数,规定拖动什么数据。...); } 在本例中,数据类型是 “text”,而值是这个可拖动元素的 id (“drag1”)。...在上面的例子中,ondrop 属性调用了一个函数,drop(event): function drop(ev) { ev.preventDefault(); var data = ev.dataTransfer.getData...该方法将返回在 setData() 方法中设置为相同类型的任何数据 被拖数据是被拖元素的 id (“drag1”) 把被拖元素追加到放置元素中 使用示例 一个完整的拖曳效果是由拖曳(Drag)和释放(Drop

    1.2K20

    基于HTML5的Drag and Drop生成图片Base64信息

    HTML5的Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过Drag...and Drop生成图片的Base64的字符串信息。...使用Base64方式的图片有诸多好处,可将多个图片信息整合到单个js文件避免多次http请求,可以避免WebGL例子跨域访问的安全限制无法本地文件运行等好处,当然弊端也不少例如不能有效利用浏览器图片缓存机制等...数据模型,列表显示图片效果、名称和宽高信息,拓扑显示图片、修改时间和文件大小等信息,文本框生成对应注册到htDefault.setImage函数的代码片段,用户直接可以将文本框内的代码拷贝到自己的工程的js... dragExit, false); window.addEventListener("dragover", dragOver, false); window.addEventListener("drop

    74140

    基于HTML5的Drag and Drop生成图片Base64信息

    HTML5的Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过Drag...and Drop生成图片的Base64的字符串信息。...使用Base64方式的图片有诸多好处,可将多个图片信息整合到单个js文件避免多次http请求,可以避免WebGL例子跨域访问的安全限制无法本地文件运行等好处,当然弊端也不少例如不能有效利用浏览器图片缓存机制等...数据模型,列表显示图片效果、名称和宽高信息,拓扑显示图片、修改时间和文件大小等信息,文本框生成对应注册到htDefault.setImage函数的代码片段,用户直接可以将文本框内的代码拷贝到自己的工程的js...dragExit, false); window.addEventListener("dragover", dragOver, false); window.addEventListener("drop

    1.1K60

    通过HTML5的Drag and Drop生成拓扑图片Base64信息

    HTML5 原生的 Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过Drag...and Drop生成图片的Base64的字符串信息。...使用Base64方式的图片有诸多好处,可将多个图片信息整合到单个js文件避免多次http请求,可以避免WebGL例子跨域访问的安全限制无法本地文件运行等好处,当然弊端也不少例如不能有效利用浏览器图片缓存机制等...数据模型,列表显示图片效果、名称和宽高信息,拓扑显示图片、修改时间和文件大小等信息,文本框生成对应注册到htDefault.setImage函数的代码片段,用户直接可以将文本框内的代码拷贝到自己的工程的js...dragExit, false); window.addEventListener("dragover", dragOver, false); window.addEventListener("drop

    92380

    【前端拖拽组件库】最强开源高性能组件库Pragmatic-drag-and-drop简介与分析

    toc简介Pragmatic-drag-and-drop是由 Atlassian 公司开发出来的一个前端组件库,把Pragmatic-drag-and-drop翻译为中文就是:“实用的拖放”,可以理解为...Pragmatic-drag-and-drop 官网文档地址:https://atlassian.design/components/pragmatic-drag-and-drop/about,开源项目地址为...:https://github.com/atlassian/pragmatic-drag-and-drop,开发语言为TypeScript,同学们可以登录网址学习Pragmatic-drag-and-drop...安装pragmatic-drag-and-drop库:# 安装包yarn add @atlaskit/pragmatic-drag-and-drop核心包包含适配器,监视器以及常用工具库等,下面分别一一介绍...这里再附上pragmatic-drag-and-drop的标准加载流程图:pragmatic-drag-and-drop的延迟加载如下:对pragmatic-drag-and-drop库的深入理解还请同学们自行学习

    2.2K21

    vue-grid-layout数据可视化图表面板优化过程所遇问题汇总

    对于drag事件不熟悉的,请先阅读:《drag事件详解:html5鼠标拖动排序及resize实现方案分析及实践》之前老项目grafana面板,如下图所示(GEM添加图表是直接到图表编辑,编辑完成后自动插入到面板最后...:其实很多初级的前端同学只知道JS改变CSS会让浏览器回流,其实JS读取某些属性也会让浏览器回流,比如js请求以下style信息时,触发回流(浏览器会立刻清空队列:)clientWidth、clientHeight...还有有些实现还使用了Bus 透传 drag/dragend 事件,其实这里可能没有理解 :针对对象事件名称说明被拖动的元素dragstart在元素开始被拖动时候触发drag在元素被拖动时反复触发dragend...New data can be added to the drag data store.读/写模式,在dragstart事件中使用,可以添加新数据到drag data store中。...drop事件不触发:在发现页面拖动过程中,drop事件不触发,重新了看了下《drag事件详解:html5鼠标拖动排序及resize实现方案分析及实践》drop:源对象拖放到目标对象中,目标对象完全接受被拖拽对象时触发

    1.6K30

    python GUI库图形界面开发之PyQt5控件数据拖曳DragDrop详细使用方法与实例

    PyQt5数据拖曳DragDrop介绍 为用户提供的拖曳功能很直观,在很对桌面应用程序中,复制或移动对象都可以通过拖曳来完成 基于MIME类型的拖曳数据传输是基于QDrag类的,QMimeData对象将关联的数据与其对应的...DragMoveEvent 在拖曳操作进行时会触发该事件 DragLeaveEvent 当执行一个拖曳操作,并且鼠标指针离开该控件时,这个事件被触发 DropEvent 当拖曳操作在其目标控件上被释放时,这个事件将被触发 Drag...如有则接受,无则忽略 if e.mimeData().hasText(): e.accept() else: e.ignore() 本文主要介绍了PyQt5控件数据拖曳Drag...与Drop详细使用方法与实例,更多关于这方面的知识请查看下面的相关链接

    1.5K41
    领券