网上已经有一个轻量级的dom-drag类库(作者: Aaron Boodman),回头看到自己写的类库,内牛满面……,dom-drag类可以到http://boring.youngpup.net/projects/dom-drag/下载,代码非常简单,而且提供了很多易用的特性。并且网站上提供了非常详细的例子<!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">
<html>
<head>
<script language="javascript" src="dom-drag.js"></script>
<style type="text/css">
    #thumb {
        position:absolute;
        height:50px;
        width:12px;
        background-color:#eee;
        border:1px outset #eee;
        }
</style>
</head>

<body>
<div id="thumb" style="left:25px; top:25px;"></div>

<script language="javascript">
    var aThumb = document.getElementById("thumb");
    Drag.init(aThumb, null, 25, 25, 25, 200);
</script>
</body>
</html>

init : function(o, oRoot, minX, maxX, minY, maxY, bSwapHorzRef, bSwapVertRef, fXMapper, fYMapper)
  
 o :是想现实鼠标拖动的组件;
 oRoot : 是o上层的组件,将随o一起拖动;
 minX, maxX, minY, maxY :设置鼠标拖动的范围, 由下面的例子cropper可以看出,如果有oRoot,那范围是由oRoot相对于页面来说的;
 bSwapHorzRef, bSwapVertRef :设置组件的优先权;
 fXMapper, fYMapper: 设置拖动的路径
init : function(o, oRoot, minX, maxX, minY, maxY, bSwapHorzRef, bSwapVertRef, fXMapper, fYMapper)
  
 o :是想现实鼠标拖动的组件;
 oRoot : 是o上层的组件,将随o一起拖动;
 minX, maxX, minY, maxY :设置鼠标拖动的范围, 由下面的例子cropper可以看出,如果有oRoot,那范围是由oRoot相对于页面来说的;
 bSwapHorzRef, bSwapVertRef :设置组件的优先权;
 fXMapper, fYMapper: 设置拖动的路径