SlideShare a Scribd company logo
1 of 20
HTML5   Drag Drop By  老刘  (hugo)
History It all begins with IE4. IE4  首先引入了拖拽概念 IE >= 4  都支持拖拽 4<= IE < 9  只支持 2 种元素拖拽 1. <a href=“#” >draggable</a> 2. <img src=“some.img” /> demo
Events draggableNode 支持以下 event : dragstart dragend drag dragenter targetNode 支持以下 event : dragover dragenter dragleave drop
Event  注册 draggableNode.observe('dragstart', onDragstart)   .observe(‘dragend', onDragend); dropZone.observe(‘dragenter’, onDragenter) .observe(‘dragleave’, onDragleave) .observe(‘dragover’, onDragover) .observe(‘drop’, onDrop); $(Document.body).observe(‘drag’, onDrag); demo
Key Note ,[object Object],[object Object],[object Object],[object Object],[object Object]
dataTransfer ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],Properties dropEffects ,[object Object],[object Object],[object Object],[object Object],effectAllowed ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object]
Methods ,[object Object],[object Object],[object Object],[object Object]
HTML 5  HTML5  继承了 IE 的 Dragdrop 事件。 与 IE 的不同, HTML5 所有的元素都支持拖拽,只要在元素中加入  draggable=“true”, 这个元素就可以拖拽了。 demo
Cross frame drag drop ,[object Object],[object Object],[object Object]
File ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FileReader ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FileReader ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FileReader ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
File & FileReader ,[object Object],[object Object],[object Object]
拖拽文件与上传 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
XMLHttpRequest  文件上传 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
XMLHttpRequest ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
断点续传 ,[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Row Set初步学习V1.1
Row Set初步学习V1.1Row Set初步学习V1.1
Row Set初步学习V1.1Zianed Hou
 
Lucene2 4学习笔记1
Lucene2 4学习笔记1Lucene2 4学习笔记1
Lucene2 4学习笔记1yiditushe
 
cnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchcnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchSzuping Wang
 
資料庫應用與實際操作
資料庫應用與實際操作資料庫應用與實際操作
資料庫應用與實際操作阿狗 郭
 
Google developer tool 簡介
Google developer tool 簡介Google developer tool 簡介
Google developer tool 簡介Shu Ting Hsieh
 
Mongo快速入门
Mongo快速入门Mongo快速入门
Mongo快速入门Lucien Li
 

What's hot (8)

Row Set初步学习V1.1
Row Set初步学习V1.1Row Set初步学习V1.1
Row Set初步学习V1.1
 
Js培训
Js培训Js培训
Js培训
 
Lucene2 4学习笔记1
Lucene2 4学习笔记1Lucene2 4学习笔记1
Lucene2 4学习笔记1
 
A
AA
A
 
cnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchcnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearch
 
資料庫應用與實際操作
資料庫應用與實際操作資料庫應用與實際操作
資料庫應用與實際操作
 
Google developer tool 簡介
Google developer tool 簡介Google developer tool 簡介
Google developer tool 簡介
 
Mongo快速入门
Mongo快速入门Mongo快速入门
Mongo快速入门
 

Similar to Drag & drop

第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践taobao.com
 
JavaScript Advanced Skill
JavaScript Advanced SkillJavaScript Advanced Skill
JavaScript Advanced Skillfirestoke
 
jQuery介绍@disandu.com
jQuery介绍@disandu.comjQuery介绍@disandu.com
jQuery介绍@disandu.comThink hy
 
张所勇:前端开发工具推荐
张所勇:前端开发工具推荐张所勇:前端开发工具推荐
张所勇:前端开发工具推荐zhangsuoyong
 
在雲端上啜飲爪哇
在雲端上啜飲爪哇在雲端上啜飲爪哇
在雲端上啜飲爪哇建興 王
 
HTML5概览
HTML5概览HTML5概览
HTML5概览Adam Lu
 
Ajax Transportation Methods
Ajax Transportation MethodsAjax Transportation Methods
Ajax Transportation Methodsyiditushe
 
旺铺前端设计和实现
旺铺前端设计和实现旺铺前端设计和实现
旺铺前端设计和实现hua qiu
 
Android -汇博
Android -汇博Android -汇博
Android -汇博dlqingxi
 
Spry框架的简单使用小结
Spry框架的简单使用小结Spry框架的简单使用小结
Spry框架的简单使用小结sunnylqm
 
Puppet安装测试
Puppet安装测试Puppet安装测试
Puppet安装测试Yiwei Ma
 
给聚划算后端开发的前端培训
给聚划算后端开发的前端培训给聚划算后端开发的前端培训
给聚划算后端开发的前端培训j5726
 
Javascript autoload
Javascript autoloadJavascript autoload
Javascript autoloadjay li
 
打開窗,讓大象跨進來 - Microsoft HDInsight
打開窗,讓大象跨進來 - Microsoft HDInsight打開窗,讓大象跨進來 - Microsoft HDInsight
打開窗,讓大象跨進來 - Microsoft HDInsightKuo-Chun Su
 
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)rvillegasg
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型Jackson Tian
 
Node getting-started
Node getting-startedNode getting-started
Node getting-startedlylijincheng
 

Similar to Drag & drop (20)

第三方内容开发最佳实践
第三方内容开发最佳实践第三方内容开发最佳实践
第三方内容开发最佳实践
 
JavaScript Advanced Skill
JavaScript Advanced SkillJavaScript Advanced Skill
JavaScript Advanced Skill
 
jQuery介绍@disandu.com
jQuery介绍@disandu.comjQuery介绍@disandu.com
jQuery介绍@disandu.com
 
Web base 吴志华
Web base 吴志华Web base 吴志华
Web base 吴志华
 
张所勇:前端开发工具推荐
张所勇:前端开发工具推荐张所勇:前端开发工具推荐
张所勇:前端开发工具推荐
 
在雲端上啜飲爪哇
在雲端上啜飲爪哇在雲端上啜飲爪哇
在雲端上啜飲爪哇
 
HTML5概览
HTML5概览HTML5概览
HTML5概览
 
Ajax Transportation Methods
Ajax Transportation MethodsAjax Transportation Methods
Ajax Transportation Methods
 
旺铺前端设计和实现
旺铺前端设计和实现旺铺前端设计和实现
旺铺前端设计和实现
 
Android -汇博
Android -汇博Android -汇博
Android -汇博
 
Les3
Les3Les3
Les3
 
Spry框架的简单使用小结
Spry框架的简单使用小结Spry框架的简单使用小结
Spry框架的简单使用小结
 
Puppet安装测试
Puppet安装测试Puppet安装测试
Puppet安装测试
 
给聚划算后端开发的前端培训
给聚划算后端开发的前端培训给聚划算后端开发的前端培训
给聚划算后端开发的前端培训
 
Javascript autoload
Javascript autoloadJavascript autoload
Javascript autoload
 
打開窗,讓大象跨進來 - Microsoft HDInsight
打開窗,讓大象跨進來 - Microsoft HDInsight打開窗,讓大象跨進來 - Microsoft HDInsight
打開窗,讓大象跨進來 - Microsoft HDInsight
 
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)
Windowsîä¼þïµí³¹ýâëçý¶¯¿ª·¢½ì³ì(µú¶þ°æ)
 
Les 3 ppt
Les 3 pptLes 3 ppt
Les 3 ppt
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
 
Node getting-started
Node getting-startedNode getting-started
Node getting-started
 

Drag & drop

  • 1. HTML5 Drag Drop By 老刘 (hugo)
  • 2. History It all begins with IE4. IE4 首先引入了拖拽概念 IE >= 4 都支持拖拽 4<= IE < 9 只支持 2 种元素拖拽 1. <a href=“#” >draggable</a> 2. <img src=“some.img” /> demo
  • 3. Events draggableNode 支持以下 event : dragstart dragend drag dragenter targetNode 支持以下 event : dragover dragenter dragleave drop
  • 4. Event 注册 draggableNode.observe('dragstart', onDragstart) .observe(‘dragend', onDragend); dropZone.observe(‘dragenter’, onDragenter) .observe(‘dragleave’, onDragleave) .observe(‘dragover’, onDragover) .observe(‘drop’, onDrop); $(Document.body).observe(‘drag’, onDrag); demo
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. HTML 5 HTML5 继承了 IE 的 Dragdrop 事件。 与 IE 的不同, HTML5 所有的元素都支持拖拽,只要在元素中加入 draggable=“true”, 这个元素就可以拖拽了。 demo
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.