拖动层的代码不是它自己写么 
我还不会写
这个是一个拖动图片的代码
第一步:把如下代码加入<body>区域中
<style type="text/css">
    #plane1 {position:absolute; left:290; top:170; width:121; z-index:0}
    #plane2 {position:absolute; left:400; top:250; width:118; z-index:0}
</style>
<SCRIPT LANGUAGE="JavaScript">
//Modified by the CoffeeCup HTML Editor++
//http://www.coffeecup.com
// Global variables for platform branching
var isNav, isIE
if (parseInt(navigator.appVersion) >= 4) {
    if (navigator.appName == "Netscape") {
        isNav = true
    } else {
        isIE = true
    }
}// ***Begin CSS custom API Functions***
// Set zIndex property
function setZIndex(obj, zOrder) {
    obj.zIndex = zOrder
}
// Position an object at a specific pixel coordinate
function shiftTo(obj, x, y) {
    if (isNav) {
        obj.moveTo(x,y)
    } else {
        obj.pixelLeft = x
        obj.pixelTop = y
    }
}
// ***End API Functions***// Global holds reference to selected element
var selectedObj
// Globals hold location of click relative to element
var offsetX, offsetY// Find out which element has been clicked on
function setSelectedElem(evt) {
    if (isNav) {
        // declare local var for use in upcoming loop
        var testObj
        // make copies of event coords for use in upcoming loop
        var clickX = evt.pageX
        var clickY = evt.pageY
        // loop through all layers (starting with frontmost layer)
        // to find if the event coordinates are in the layer
        for (var i = document.layers.length - 1; i >= 0; i--) {
            testObj = document.layers[i]
            if ((clickX > testObj.left) && 
                (clickX < testObj.left + testObj.clip.width) && 
                (clickY > testObj.top) && 
                (clickY < testObj.top + testObj.clip.height)) {
                    // if so, then set the global to the layer, bring it
                    // forward, and get outa here
                    selectedObj = testObj
                    setZIndex(selectedObj, 100)
                    return
            }
        }
    } else {
        // use IE event model to get the targeted element
        var imgObj = window.event.srcElement
        // make sure it's one of our planes
        if (imgObj.parentElement.id.indexOf("plane") != -1) {
            // then set the global to the style property of the element,
            // bring it forward, and say adios
            selectedObj = imgObj.parentElement.style
            setZIndex(selectedObj,100)
            return
        }
    }
    // the user probably clicked on the background
    selectedObj = null
    return
}
// Drag an element
function dragIt(evt) {
    // operate only if a plane is selected
    if (selectedObj) {
        if (isNav) {
            shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY))
        } else {
            shiftTo(selectedObj, (window.event.clientX - offsetX), (window.event.clientY - offsetY))
            // prevent further system response to dragging in IE
            return false
        }
    }
}
// Set globals to connect with selected element
function engage(evt) {
    setSelectedElem(evt)
    if (selectedObj) {
        // set globals that remember where the click is in relation to the
        // top left corner of the element so we can keep the element-to-cursor
        // relationship constant throughout the drag
        if (isNav) {
            offsetX = evt.pageX - selectedObj.left
            offsetY = evt.pageY - selectedObj.top
        } else {
            offsetX = window.event.offsetX
            offsetY = window.event.offsetY
        }
    }
    // block mouseDown event from forcing Mac to display
    // contextual menu.
    return false
}
// Restore elements and globals to initial values
function release(evt) {
    if (selectedObj) {
        setZIndex(selectedObj, 0)
        selectedObj = null
    }
}
// Turn on event capture for Navigator
function setNavEventCapture() {
    if (isNav) {
        document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP)
    }
}
// Assign event handlers used by both Navigator and IE (called by onLoad)
function init() {
    if (isNav) {
        setNavEventCapture()
    }
    // assign functions to each of the events (works for both Navigator and IE)
    document.onmousedown = engage
    document.onmousemove = dragIt
    document.onmouseup = release
}
</SCRIPT> 
<DIV ID=plane1><IMG NAME="planePic1" SRC="clock1.jpg" BORDER=0></DIV>
<DIV ID=plane2><IMG NAME="planePic1" SRC="clock2.jpg" BORDER=0></DIV><body bgcolor="#fef4d9" onLoad="init()">

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3314/3314144.xml?temp=9.078616E-02
      

  2.   

    http://community.csdn.net/Expert/topic/3314/3314144.xml?temp=.1986963
      

  3.   

    <span style='position:absolute;width:200;height:200;background:red' onmousedown=MouseDown(this) onmousemove=MouseMove() onmouseup=MouseUp()>aa</span>
    <script>
    var Obj
    function MouseDown(obj){
    Obj=obj
    Obj.setCapture()
    Obj.l=event.x-Obj.style.pixelLeft
    Obj.t=event.y-Obj.style.pixelTop
    }
    function MouseMove(){
    if(Obj!=null){
    Obj.style.left = event.x-Obj.l
    Obj.style.top = event.y-Obj.t
    }
    }
    function MouseUp(){
    if(Obj!=null){
    Obj.releaseCapture()
    Obj=null
    }
    }
    </script>
      

  4.   

    <script>
    var xx=0,yy=0
    </script>
    <img src="http://free.cnyys.com/my/killerj/new/images/me.jpg" 
    style='position:absolute;' 
    ondragstart="setCapture();xx=event.x-this.offsetLeft;yy=event.y-this.offsetTop;" ondrag='this.style.left=event.x-xx;this.style.top=event.y-yy' 
    ondragend="releaseCapture();">