本帖最后由 Legend1988 于 2011-09-20 16:11:31 编辑

解决方案 »

  1.   

    图挂了,,,猜一下 楼主的name  杨鑫。
      

  2.   

    IE下的话,如果你元素背景设置transparent好像有时候会获取不到事件的
      

  3.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>JavaScript拖拽3——解决快速拖拽的问题</title>
    <style type="text/css">
    #content1,#content2,#content3 {
    background-color:#999;
    border:solid;
    }
    </style>
    <script type="text/javascript">
    var dragElement;
    var level = 1;
    var eventX;
    var eventY;
    var divX;
    var divY;
    function dragInit(node){
    if(node.className == "dragable"){
    node.style.position = "relative";
    node.style.left = "0px";
    node.style.top = "0px";
    node.onmousedown = down;
    node.onmouseover = over;
    }
    var children = node.childNodes;
    for(var i=0; i<children.length; i++){
    dragInit(children[i]);
    }
    }
    window.onload = function(){
    dragInit(document);
    document.onmousemove = move;
    document.onmouseup = docup;
    }
    function down(event){
    event = event || window.event;
    if(event.srcElement){dragElement = event.srcElement;}
    else if(event.target){dragElement = event.target;}
    eventX = parseInt(event.clientX);
    eventY = parseInt(event.clientY);
    divX = parseInt(dragElement.style.left);
    divY = parseInt(dragElement.style.top);
    dragElement.style.zIndex = level++;
    }
    function move(event){
    if(dragElement){
    event = event || window.event;
    var distX = parseInt(event.clientX)-eventX+divX;
    var distY = parseInt(event.clientY)-eventY+divY;
    dragElement.style.left = distX+"px";
    dragElement.style.top = distY+"px";
    }
    }
    function over(){
    this.style.cursor = "move";
    }
    function docup(){
    dragElement = null;
    }
    </script>
    </head><body>
    <div id="content1" class="dragable">
    <p>我是拖曳示例DIV1.</p>
    <p>可以试验一下效果.</p>
    </div>
    <div id="content2" class="dragable">
    <p>我是拖曳示例DIV2.</p>
    </div>
    </body>
    </html>麻烦试一下,再看一下我前面提的问题~
      

  4.   

    你把两个小div 放到一个大div里,然后把onmouseover效果加到大div里或者你试着把onmousemove换成onmouseover
      

  5.   

    to:#8 #9你们看楼主贴的图(挂了)就晓得了,右键 属性..
    file:///C:/Users/Yangxin/Desktop/未命名.jpg我猜的.....Yangxin
      

  6.   

    if(node.className == "dragable"){}  
     //这有问题,点击<p>标签后不能得到div的class所以不能移动