日期:2014-05-16  浏览次数:20414 次

javascript 拖拽替换

http://www.blueidea.com/tech/web/2006/3791.asp

?

怎么用javascript进行拖拽

本文译自:http://www.webreference.com/programming/javascript/mk/column2/index.html
所有版权归原文所有

Javascript的特点是dom的处理与网页效果,大多数情况我们只用到了这个语言的最简单的功能,比如制作图片轮播/网页的tab等等,这篇文章将向你展示如何在自己的网页上制作拖拽.

有很多理由让你的网站加入拖拽功能,最简单的一个是数据重组.例如:你有一个序列的内容让用户排序,用户需要给每个条目进行输入或者用select选择,替代前面这个方法的就是拖拽.或许你的网站也需要一个用户可以拖动的导航窗口!那么这些效果都是很简单:因为你可以很容易的实现!

网页上实现拖拽其实也不是很复杂.第一你需要知道鼠标坐标,第二你需要知道用户鼠标点击一个网页元素并实现拖拽,最后我们要实现移动这个元素.

运行代码框

?[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

获取鼠标移动信息

第一我们需要获取鼠标的坐标.我们加一个用户函数到document.onmousemove就可以了:

?

?

document.onmousemove = mouseMove;

function mouseMove(ev){
?ev?????????? = ev || window.event;
?var mousePos = mouseCoords(ev);
}

function mouseCoords(ev){
?if(ev.pageX || ev.pageY){
??return {x:ev.pageX, y:ev.pageY};
?}
?return {
??x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
??y:ev.clientY + document.body.scrollTop? - document.body.clientTop
?};
}

?

运行代码框

?[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]