我使用html5'draggable'属性来拖动容器中的2个元素和svg行来连接这两个元素.连接后,拖动第一个Div应重新绘制连接的svg行(我通过调用'handleDragOver'函数来执行dragover事件).但是如果你更快地拖动第一个div,则不会触发drop事件,并且div会在绘制线条时保持它的原始位置.
function handleDragOver(e) {
if (e.preventDefault) {
e.preventDefault();
}
//Some code doing DOM computation and manipulation
}
return false;
//e.dataTransfer.dropEffect = 'move';
}
Run Code Online (Sandbox Code Playgroud)
如何确保每次都触发drop事件.
请注意:
我知道使用jQuery表达式$(element).on("mousedown", function(evt) { ... });可以处理mousedown元素上的事件。
尽管我需要在浏览器的滚动条上检测到mousedown或click事件,并需要运行一些功能。