在阻力和阻力方面,preventDefault()阻止了什么?下降?

时间:2016-01-13 19:12:05

标签: javascript html

例如这里是来自w3schools.com的拖放代码:

function allowDrop(ev) {
    ev.preventDefault();
}

function drag(ev) {
    ev.dataTransfer.setData("text", ev.target.id);
}  

function drop(ev) {
    ev.preventDefault();    
    var data = ev.dataTransfer.getData("text");     
    ev.target.appendChild(document.getElementById(data));
}

2 个答案:

答案 0 :(得分:0)

  • 调用preventDefault()以阻止浏览器默认处理 数据(默认为打开时链接打开)
  • 使用dataTransfer.getData()方法获取拖动的数据。此方法将返回设置为的任何数据 setData()方法
  • 中的相同类型

答案 1 :(得分:0)

您必须取消ondragenter和ondragover的默认操作才能启动ondrop。对于div,默认操作不会丢弃。这可以与输入type = text元素的情况形成对比,其中默认操作是要删除的。为了允许对div进行拖放操作,您必须取消默认操作