Javascript 拖放div元素无法正常工作
我创建了一个简单的代码来拖放div元素,但效果不好。Javascript 拖放div元素无法正常工作,javascript,drag-and-drop,Javascript,Drag And Drop,我创建了一个简单的代码来拖放div元素,但效果不好。 当您将div元素快速拖动到任何方向top,left,right,down,鼠标光标将离开div元素,尽管我仍在按按钮 HTML <div id="box"></div> JavaScript var elem = document.getElementById('box'); var PositionX = 0; var PositionY = 0; var MouseX = 0 var MouseY = 0; va
当您将div元素快速拖动到任何方向
top
,left
,right
,down
,鼠标光标将离开div元素,尽管我仍在按按钮
HTML
<div id="box"></div>
JavaScript
var elem = document.getElementById('box');
var PositionX = 0;
var PositionY = 0;
var MouseX = 0
var MouseY = 0;
var mouseDown = false;
elem.onmousedown = function(e) {
PositionX = elem.offsetLeft;
PositionY = elem.offsetTop;
MouseX = e.clientX;
MouseY = e.clientY;
mouseDown = true;
};
elem.onmousemove = function(e) {
if (mouseDown) {
elem.style.left = PositionX + e.clientX - MouseX + "px";
elem.style.top = PositionY + e.clientY - MouseY + "px";
}
};
elem.onmouseover = function(e) {
elem.style.cursor = 'move';
};
elem.onmouseup = function(e) {
mouseDown = false;
};
尝试更改这一行:
elem.onmousemove = function(e) {
致:
尝试以下方法,希望它能完成您的工作:
var elem= document.getElementbyId('<%=box.ClientID%>');
elem.onmousemove= function(e) {
if (mouseDown) {
elem.style.left = PositionX + e.clientX - MouseX + "px";
elem.style.top = PositionY + e.clientY - MouseY + "px";
}
};
var elem=document.getElementbyId(“”);
元素onmousemove=函数(e){
如果(鼠标向下){
elem.style.left=位置x+e.clientX-MouseX+“px”;
elem.style.top=PositionY+e.clientY-MouseY+px;
}
};
如果这对u不起作用,则u可以使用
document.onmousemove = function(e) {
var elem= document.getElementbyId('<%=box.ClientID%>');
elem.onmousemove= function(e) {
if (mouseDown) {
elem.style.left = PositionX + e.clientX - MouseX + "px";
elem.style.top = PositionY + e.clientY - MouseY + "px";
}
};