拖拽(Drag 和 drop)是 HTML5 标准的组成部分。拖拽是一种常见的特性,即抓取对象以后拖到另一个位置。

Internet Explorer 9、Firefox、Opera 12、Chrome 以及 Safari 5 支持拖放。

DataTransfer 对象

  退拽对象用来传递的媒介,使用一般为Event.dataTransfer。

被拖元素:

  • ondragstart(开始拖拽)

    function drag(ev) {

      ev.dataTransfer.setData("Text",ev.target.id);

    }

  • ondrag(拖拽中)
  • ondragend(拖拽结束)

投放区:

  • ondragenter(进入投放区)
  • ondragleave(离开投放区)
  • ondragover(拖拽到何处)

    若不阻止默认事件,则无法将元素放置到投放区。 阻止默认事件e.preventDefalut();

  • ondrop(投放事件)   浏览器对元素默认以链接形式打开。

    阻止默认:e.preventDefalut();

    function drop(ev) {

      ev.preventDefault();

      var data=ev.dataTransfer.getData("Text");

      ev.target.appendChild(document.getElementById(data));

    }

html5拖拽总结的更多相关文章

  1. Html5拖拽复制

    拖拽是一种常见的特性,即抓取对象以后拖到另一个位置. 在 HTML5 中,拖拽是标准的一部分,任何元素都能够拖拽. Html5拖拽非常常见的一个功能,但是大部分拖拽的案例都是一个剪切的过程, 项目中需 ...

  2. html5拖拽

    html5拖拽一 <!DOCTYPE html> <html> <head lang="en"> <meta charset=" ...

  3. HTML5 拖拽复制功能的实现方法

    Internet Explorer 9FirefoxOpera 12ChromeSafari 5 v1.0代码部分 <!DOCTYPE html><html><head& ...

  4. 每天一个JavaScript实例-html5拖拽

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  5. HTML5拖拽功能中 dataTransfer对象详解

    有了HTML5,老板再也不用担心我们的上传了,再加上有拖拽上传是不是很酷.百度一下,有关HTML5拖拽上传的文章和实例不少,都缺不了一个至关重要的东东DataTransfer.但是详细介绍的不多,尤其 ...

  6. 基于html5拖拽api实现列表的拖拽排序

    基于html5拖拽api实现列表的拖拽排序 html代码: <ul ondrop="drop_handler(event);" ondragover="dragov ...

  7. html5拖拽事件 xhr2 实现文件上传 含进度条

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. HTML5拖拽实例

    最近应该会用到,借用一下......小妹儿,你又变懒了 拖拽相关属性 draggable属性是html5的全局属性,是html5支持拖放操作的方式之一,用来表示元素是否可以被拖放,draggable有 ...

  9. html之div拖拽,html5拖拽

    html之div拖拽 http://www.w3school.com.cn/html5/html_5_draganddrop.asp

随机推荐

  1. UISegmentedControl 的使用

    /** 设置选择器 */ - (void)setUpSegmentCtr { UISegmentedControl *segmentCtr = [[UISegmentedControl alloc] ...

  2. [tmp] hu60@所有人插件

    <div style="padding:3px;text-align:right;"> <a style="background:green;color ...

  3. win下命令行替代品Cmder

    Cmder简单使用小结 Cmder是一款Windows环境下非常简洁美观易用的cmd替代者,它支持了大部分的Linux命令. 从官网下载下来一个zip安装包,解压之后运行根目录的Cmder.exe即可 ...

  4. sync

    tools-android-Sync Project ---------------- file-Project Structure add dependencies

  5. SSAS动态添加分区 (转载)

    一.动态分区的好处就不说了,随着时间的推移,不可能一个度量值组都放在一个分区中,处理速度非常慢,如何动态添加分区,如何动态处理分区,成为了很多新手BI工程师一个头痛的问题,废话不多说,分享一下我的经验 ...

  6. ABP dynamic API

    打开ABP的事例项目SimpleTaskSystem.WebSpaAngular 中LayoutView <!-- Dynamic scripts of ABP system (They are ...

  7. C# 自动Ping服务

    using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; u ...

  8. 上海有线通下载exe会302转发请求

    起因: 做的软件用的clickonce,在公网的clickonce下载exe时一直报错,在vpn环境下没问题.错误提示如下: + HTTP redirect is not allowed for ap ...

  9. [To do]Appx Package installed, can't start at first time

    When installed partition tool & mkrcvcd as windows store app. it can't start at first time. the ...

  10. Java设计模式(三)——观察者模式和监听器

    为了实现多个模块之间的联动,最好的方法是使用观察者模式.网上介绍的资料也比较多,今天我就从另一个方面谈谈自己对观察者模式的理解.从JDK提供的支持库里,我们能够找到四个对象:Observable.Ob ...