DataTransfer object in HTML5


The event listener methods for all the drag and drop events accept Event object that has a readonly attribute called dataTransfer. The event.dataTransfer returns DataTransfer object associated with the event as follows:

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

You can try to run the following code to implement DataTransfer object:

<!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>

Updated on: 29-Jan-2020

227 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements