700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > H5的拖放功能详解

H5的拖放功能详解

时间:2020-02-07 00:04:02

相关推荐

H5的拖放功能详解

web前端|H5教程

html5,详解,功能

web前端-H5教程关于HTML5中的拖放

网站源码下载后怎么用,关于ubuntu的权限,爬虫变成知了吗,php sweitch,泰昌SEOlzw

拖放(Drag 和 Drop)是一种常见的特性,即抓取对象以后拖到另一个位置,在 HTML5 中,拖放是标准的组成部分。在HTML5中用户可以使用鼠标选择一个可拖动元素,将元素拖动到一个可放置元素,并通过释放鼠标按钮放到这些元素。在拖动操作期间,可拖动元素的半透明表示跟随鼠标指针。

网站源码带后台php,vscode 编辑图片,ubuntu 杀毒,tomcat上传视频,sqlite能跨哪些平台,dede 插件怎么用,前端框架的底层是什么,网络爬虫是不是蠕虫病毒,php 上传 七牛,铜陵seo推广渠道,公司门户网站模板,linux下载网页源码,问答系统网站模板lzw

如果我们希望元素可以被拖动,那么需要将其 draggable属性设为true (a标签draggable默认是true)

修改大淘客源码,ubuntu删除go语言,tomcat6是什么程序,谷歌街景图爬虫,php脚本文件怎么打开,麒麟seo技巧lzw

拖放的事件

在进行拖放操作的不同阶段会触发数种事件,拖拽事件的dataTransfer属性存放了拖放操作中的相关数据。

(在拖拽的时候只会触发拖拽的相关事件,鼠标事件,例如mousemove,是不会触发的)

DataTransfer 对象

在处理拖放操作时,我们需要用到 DataTransfer 对象来保存被拖动的数据。 DataTransfer 可以保存一项或多项数据、一种或者多种数据类型。

属性

方法

浏览器支持

Internet Explorer 9+、Firefox、Opera 12、Chrome 以及 Safari 5+

演示代码

Drag & Drop.box { display: inline-block; width: 100px; height: 100px; border: 1px solid #ccccff; background-color: #ccccff; text-align: center; line-height: 100px;}.bin { width: 200px; height: 200px; padding: 10px; border: 1px solid #ccccff; overflow: hidden; float: left;}

可拖拽元素

var bins = document.querySelectorAll(.bin); var boxs = document.querySelectorAll(.box); var drag = null; for (var i = 0; i < boxs.length; i++) { var box = boxs[i]; box.onselectstart = function() {return false; }; box.ondragstart = function(e) {e.dataTransfer.effectAllowed = move;e.dataTransfer.setData( ext/plain, e.target.outerHTML);e.dataTransfer.setDragImage(e.target, 0, 0);drag = this;return true; }; box.ondragend = function(e) {drag = null;return false }; } for (var i = 0; i < bins.length; i++) { var bin = bins[i]; //当拖曳元素进入目标元素 bin.ondragover = function(e) {e.preentDefault();return true; }; //拖拽元素在目标元素上移动 bin.ondragenter = function(e) {this.style.backgroundColor = #eeeeff;return true; }; //拖拽元素在目标元素上离开 bin.ondragleave = function(e) {this.style.backgroundColor = #fff;return true; }; //拖拽的元素在目标元素上同时鼠标放开 bin.ondrop = function(e) {if (drag) { drag.parentNode.removeChild(drag); this.appendChild(drag);}this.style.backgroundColor = #fff;return false; }; } document.body.ondrop = function(e) { e.preventDefault(); e.stopPropagation(); }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。