zoukankan      html  css  js  c++  java
  • 拖放API

    概念:

    虽然HTML5之前已经可以使用mousedown、mousemove、mouseup来实现拖放操作,但是只支持在浏览器内部的拖放,而在HTML5中,已经支持在浏览器与其他应用程序之间的数据互相拖动,同时也大大简化了有关拖放方面的代码。

    实现拖放的步骤:

    (1)将想要拖放的对象元素的dr0aggable属性设为true。另外img元素与a元素(必须指定href)默认允许拖放。

    (2)编写与拖放有关的事件处理代码。

    应用

    代码

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>拖放示例</title>
    <script type="text/javascript">
    function init()
    {
    var source = document.getElementById("dragme");
    var dest = document.getElementById("text");
    //(1)拖放开始
    source.addEventListener("dragstart",function(ev)
    {
    //向dataTransfer对象追加数据
    var dt = ev.dataTransfer;
    dt.effectAllowed = 'all';
    //(2)拖放元素为dt.setData("text/plain",this.id);
    dt.setData("text/plain","你好");
    },false);
    //(3)dragend:拖放结束
    dest.addEventListener("dragend",function(ev)
    {
    //不执行默认操作
    ev.preventDefault();
    },false);
    //(4)drop:被拖放
    dest.addEventListener("drop",function(ev)
    {
    //从DataTransfer对象那里取得数据
    var dt = ev.dataTransfer;
    var text = dt.getData("text/plain");
    dest.textContent += text;
    //(5)不执行默认操作
    ev.preventDefault();
    //停止事件传播
    ev.stopPropagation();
    },false);
    }
    //(6)设置页面属性,不执行页面操作
    document.ondragover = function(e){e.preventDefault();};
    document.ondrop = function(e){e.preventDefault();};
    </script>
    </head>
    <body onload="init()">
    <h1>简单拖放示例</h1>
    <div id="dragme" draggable="true" style=" 200px;border: 1px solid gray;">
    请拖放
    </div>
    <div id ="text" style=" 200px;height: 200px;border: 1px solid gray;">
    </div>
    </body>
    </html>

    效果

    注意事项:

    1.起初效果显示不出来,是function(ev)这个函数后面多加了一个“ )”符号,以及document写成了docnment

    2 在HBuilder软件中编写html代码,可以发现字体是黑色是代表有误,要格外留意!

  • 相关阅读:
    Bootstrap(9) 巨幕页头缩略图和警告框组件
    Java使用点滴
    Bootstrap(8) 路径分页标签和徽章组件
    视频会议系统MCU服务器视频传输处理模式
    honeywell1900扫描枪的使用说明
    WebDev.WebServer20.exe应用程序错误
    UEFI引导过程及windows引导修复
    低分辨率的显示器模拟高分辨率显示模式
    IIS应用程序池权限与虚拟目录身份验证权限
    ADO.Net操作数据库的方式
  • 原文地址:https://www.cnblogs.com/yanyanstyle/p/11297899.html
Copyright © 2011-2022 走看看