我正在研究一个简单的 HTML5 拖放元素。这是我的 JSFiddle:http: //jsfiddle.net/e4ogxcum/3/
我想对此进行编辑,这样就不可能将工具栏从页面中移出一半。这可能吗?
换句话说,我想防止工具栏从页面中间掉下来,如下所示:
这是我的完整代码:
function drag_start(event) {
console.log('drag_start', event);
var style = window.getComputedStyle(event.target, null);
event.dataTransfer.setData("text/plain",
(parseInt(style.getPropertyValue("left"),10) - event.clientX) + ',' + (parseInt(style.getPropertyValue("top"),10) - event.clientY));
}
function drag_over(event) {
event.preventDefault();
return false;
}
function drop(event) {
event.preventDefault();
var offset = event.dataTransfer.getData("text/plain").split(',');
dm.style.left = (event.clientX + parseInt(offset[0],10)) + 'px';
dm.style.top = (event.clientY + parseInt(offset[1],10)) + 'px';
return false;
}
var dm = document.getElementById('taskbar');
dm.addEventListener('dragstart',drag_start,false);
document.body.addEventListener('dragover',drag_over,false);
document.body.addEventListener('drop',drop,false)
;