HTML ondragleave 事件

当可拖动元素或文本离开有效的放置目标时,ondragleave 事件触发。


实例

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <style>
  5. .droptarget {
  6. float: left;
  7. width: 100px;
  8. height: 35px;
  9. margin: 15px;
  10. padding: 10px;
  11. border: 1px solid #aaaaaa;
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <p>在两个矩形之间来回拖动p元素:</p>
  17. <div class="droptarget" ondrop="drop(event)" ondragenter="dragEnter(event)" ondragleave="dragLeave(event)" ondragover="allowDrop(event)">
  18. <p ondragstart="dragStart(event)" draggable="true" id="dragtarget">Drag me!</p>
  19. </div>
  20. <div class="droptarget" ondragenter="dragEnter(event)" ondragleave="dragLeave(event)" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
  21. <p style="clear:both;" id="demo"></p>
  22. <script>
  23. function dragStart(event) {
  24. event.dataTransfer.setData("Text", event.target.id);
  25. }
  26. function dragEnter(event) {
  27. if ( event.target.className == "droptarget" ) {
  28. event.target.style.border = "3px dotted red";
  29. document.getElementById("demo").innerHTML = "Entered the dropzone";
  30. }
  31. }
  32. function dragLeave(event) {
  33. if ( event.target.className == "droptarget" ) {
  34. event.target.style.border = "";
  35. document.getElementById("demo").innerHTML = "Left the dropzone";
  36. }
  37. }
  38. function allowDrop(event) {
  39. event.preventDefault();
  40. }
  41. function drop(event) {
  42. event.preventDefault();
  43. var data = event.dataTransfer.getData("Text");
  44. event.target.appendChild(document.getElementById(data));
  45. }
  46. </script>
  47. </body>
  48. </html>

浏览器支持

事件
ondragleave493.5612

所有主流浏览器都支持 ondragleave 事件。


定义和用法

当可拖动元素或文本离开有效的放置目标时,ondragleave 事件触发。

ondragenter 和 ondragleave 事件可以用户在拖动元素将要进入或离开放置目标时处理事件。

注意:要使元素可拖动,请使用全局HTML5 draggable 属性。

提示:默认情况下链接和图像是可拖动的,不需要额外设置 draggable 属性。

下面是一些在拖放操作的不同阶段可能发生的事件:

在可拖动目标(源元素)上触发的事件:

对投放目标触发的事件:

  • ondragenter-当被拖动的元素进入放置目标时触发

  • ondragover-当拖动的元素位于放置目标上时触发

  • ondragleave-当拖动的元素离开放置目标时触发

  • ondrop-当拖动的元素放置在放置目标上时触发


HTML 4.01 与 HTML5 之间的差异

无。


语法

  1. <element ondragleave="script">
属性值
描述
scriptondragleave 发生时运行的脚本。