<p>该实例演示了如何向 p 元素添加 "ondragstart" 和 "ondrag" 事件及向 div 元素添加 "ondragover" 和 "ondrop" 事件。 </p> <p>在两个矩形框中来回拖动 p 元素:</p> <div class="droptarget" ondrop="drop(event)" ondragover="allowDrop(event)"> <p ondragstart="dragStart(event)" ondragend="dragEnd(event)" draggable="true" id="dragtarget">拖动我!</p> </div> <div class="droptarget" ondrop="drop(event)" ondragover="allowDrop(event)"></div> <p style="clear:both;"><strong>注意:</strong>Internet Explorer 8 及更早 IE 版本或 Safari 5.1 及更早版本的浏览器不支持 drag 事件。</p> <p id="demo"></p> <script> /* 拖动时触发 */ function dragStart(event) { event.dataTransfer.setData("Text", event.target.id); document.getElementById("demo").innerHTML = "开始拖动 p 元素"; } function dragEnd(event) { document.getElementById("demo").innerHTML = "完成 p 元素的拖动。"; } /* E拖动完成后触发 */ function allowDrop(event) { event.preventDefault(); } function drop(event) { event.preventDefault(); var data = event.dataTransfer.getData("Text"); event.target.appendChild(document.getElementById(data)); } </script>