让元素mouseover的时候接收吧----------------------------------------
var mouseDownFlag=false;//鼠标是否按下的标志document.onmousedown=function(){
  mouseDownFlag=true;//鼠标按下将标志置true
}document.onmouseup=function(){
  mouseDownFlag=false;//鼠标松开将标志置false
}window.onload=function(){
drag(document.getElementById('drag'),[200,400,30,30]);
for(var i=0;i<document.body.childNodes.length;i++){
document.body.childNodes[i].onmouseover=function(){
if(mouseDownFlag){
alert("移过来了");
mouseDownFlag=false;
}
}
}
};

解决方案 »

  1.   

    谢谢楼上的,不过不只是mouseup,mousemove我也想知道div到了哪个元素的上方了
      

  2.   

    你的意思是说这个DIV盖住了页面的哪个元素?这就不好办了
      

  3.   

    用遍历的方法。举个例子:在table中,拖动互换元素按下,onmousedown->出现浮动DIV
    onmouseover->
    遍历你table下所有cell的坐标,如果cell坐标在你现在浮动的DIV坐标范围内,则高亮,否则跳过
    onmouseup->判断坐标在哪个cell的范围内,并swapNode或return;