拖拽事件

https://www.cnblogs.com/moqiutao/p/6365113.html

抓取对象以后拖放到另一个位置

选中

1 .在HTML5标准中,为了使元素可拖动,把draggable属性设置为true
2 .文本、图片和链接是默认可以拖放的,它们的draggable属性自动被设置成了true
3 .图片和链接按住鼠标左键选中,就可以拖放
4 .文本只有在被选中的情况下才能拖放。如果显示设置文本的draggable属性为true,按住鼠标左键也可以直接拖放
5 .拖动的时候跟着一个禁用的按钮,真的丑

完全自己实现拖拽的问题,主要是放下去的时候有点麻烦,不知道这俩能不能结合,

拖动

0 .被拖动的元素
1 .拖动开始--拖动过程--拖动结束
2 .dragstart 在元素开始被拖动时候触发
3 .drag 在元素被拖动时反复触发
4 .dragend 在拖动操作完成时触发

0 目的地元素
1 .dragenter 当被拖动元素进入目的地元素所占据的屏幕空间时触发
2 .dragover 当被拖动元素在目的地元素内时触发
3 .dragleave 当被拖动元素没有放下就离开目的地元素时触发
4 .dragenter和dragover事件的默认行为是拒绝接受任何被拖放的元素。因此,我们必须阻止浏览器这种默认行为。e.preventDefault();

释放

1 .drop 当被拖动元素在目的地元素里放下时触发,一般需要取消浏览器的默认行为。

dataTransfer对象

1 .dataTransfer对象出现在拖拽事件中,包括dragstart,dragend,dragover,dragenter,dragleave,drop
2 .属性

1 .DataTransfer.dropEffect:获取当前所拖放操作的类型,或者将拖拽操作设置为新类型.值必须为none,copy,link,move
2 .DataTransfer.effectAllowed:提供所有可能的所有类型的操作。必须是none,copy,copyLink,copyMove,link,linkMove,move,all,uninitialized
3 .DataTransfer.files:当前拖放的文件,如果拖拽的不是文件,那么这一项是空的
4 .DataTransfer.items:DataTransferItemList对象,对象是所有拖动数据的列表
5 .DataTransfer.types:在dragstart事件中设置数据格式,返回的是一个字符串数组

3 .标准方法

1 .clearData('key'):删除与给定类型关联的数据。
2 .getData('key'):返回给定类型的数据,如果该类型的数据不存在或数据传输不包括数据,返回空字符串
3 .DataTransfer.setData("key","value"):设置给定类型的数据,如果该类型的数据不存在,就在末尾添加,如果有就替换
4 .DataTransfer.setDragImage(img,xOffset,yOffset):用于设置拖动的自定义图像
5 .

dropEffect

1 .当拖拽div到了可释放区域,鼠标的形状,万恶的是拖拽没到可释放区域的形状不能设置
2 .主要值

1 .move
2 .copy
3 .link
4 .none

3 .dropEffect属性的设置主要在drageenter和dragover事件中,同时受到effectAllowed属性影响

DataTransfer.effectAllowed

1 .表示拖拽允许的效果,支持的属性比较多
2 .uninitialized:默认值,表示未初始化,从效果上来说,和all是一样
3 .none:不允许拖拽,鼠标保持禁止状态。妈的,就是这个属性。
4 .copy:可以在新位置复制元素
5 .copyLink;允许复制和链接操作
6 .link:可以在新位置建立链接
7 .copyMove:允许复制和移动操作
8 .move:可以把元素移动到新位置

判断拖拽物体的类型

handleDataTransferItems = function (items) {
  for (var i = 0; i < items.length; i += 1) {
    var kind = items[i].kind;
    var type = items[i].type;
    // 逻辑开始
    if (kind == 'string') {
      if (type.indexOf('text/plain') != -1) {
        items[i].getAsString(function (str) {
          // str是纯文本,该怎么处理,就在这里处理
        });   
      } else if (type.indexOf('text/html') != -1) {
        items[i].getAsString(function (str) {
          // str是富文本,就在这里处理
        });
      } else if (type.indexOf('text/uri-list') != -1) {
        items[i].getAsString(function (str) {
          // str是uri地址,在这里进行处理
        });
      }
    } else if (kind == 'file') {
      // 如果是图片
      if (type.indexOf('image/') != -1) {
        var file = items[i].getAsFile();
        // file就是图片文件对象,可以上传,或者其他处理
      }
    }
  }
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容