HTML5中的DataTransfer对象

所有拖放事件的事件侦听器方法都接受具有名为dataTransfer的只读属性的Event对象。event.dataTransfer返回与事件关联的DataTransfer对象,如下所示:

function EnterHandler(event) {
   DataTransfer dt = event.dataTransfer;
   …
}

您可以尝试运行以下代码来实现DataTransfer对象:

<!DOCTYPE HTML>
<html>
   <head>
      <style>
         #boxA, #boxB { float:left;padding:10px;margin:10px; -moz-user-select:none; }
         #boxA { background-color: #6633FF; width:75px; height:75px; }
         #boxB { background-color: #FF6699; width:150px; height:150px; }
      </style>

      <script>
         function dragStart(ev) {
            ev.dataTransfer.effectAllowed='move';
            ev.dataTransfer.setData("Text", ev.target.getAttribute('id'));
            ev.dataTransfer.setDragImage(ev.target,0,0);
         return true;
         }
      </script>
   </head>

   <body>
      <center>
         <h2>Drag and drop HTML5 demo</h2>
         <div>Try to drag the purple box around.</div>
         <div id = "boxA" draggable = "true" ondragstart = "return dragStart(ev)">
            <p>Drag Me</p>
         </div>
         <div id = "boxB">Dustbin</div>
      </center>
   </body>
</html>