允许拖动的对象,已经是最简单的了,建议直接用Google搜索“可拖放”的“div”,很容易的。复杂一点的,请看my.msn.com,用passport登录后就看到。

解决方案 »

  1.   

    主要是用层来实现的.<script>
    function beginDrag(elementToDrag,event)  {    var delatX=event.clientX-parseInt(elementToDrag.style.left);
        var delatY=event.clientY-parseInt(elementToDrag.style.top);
        document.attachEvent("onmousemove",moveHandler);
        document.attachEvent("onmouseup",upHandler);
        event.cancelBubble=true;
        event.returnValue=false;    function moveHandler(e)  {
        if(!e) e=window.event;  
        elementToDrag.style.left=(e.clientX-delatX)+"px";
        elementToDrag.style.top=(e.clientY-delatY)+"px";
        e.cancelBubble=true;
        }    function upHandler(e) {
        if(!e) e=window.event;  
        document.detachEvent("onmouseup",upHandler);
        document.detachEvent("onmousemove",moveHandler);
        e.cancelBubble=true;
        elementToDrag.style.left=elementToDrag.style.left;
        elementToDrag.style.top=elementToDrag.style.top;
        }   
    }</script>
    <input type="image" src="csdn.gif" id=bao
    style="position:absolute;left:0px;top:0px;"
    onmousedown="beginDrag(this,event);">
      

  2.   

    如果是QQ Home,他是在布置好整个场景后,要你手动按“保存”按钮,他就把场景内的img和坐标收集到hidden里面,然后Post。My.msn.com或者SPS技术的则更先进,你拖动后,他自动通过xmlhttp进行Post保存数据。