记得在之前的一个"拖动层"的随笔中,我实现拖动,是用的一个布尔变量,判断是否可以拖动某元素。
这两天看了一些东西,发现不需要设这个布尔变量;
实现过程:
按下鼠标的时候,给文档对象(当然也可以是别的DOM对象)的移动事件绑定一个处理函数,同时也给鼠标抬起时绑定一个解除的处理函数。
//按下鼠标并移动时(拖动),调用的函数;
function startSelection(event){
……
}
//解除移动时的处理函数;
function cancelSelection() {
$(document).unbind('mousemove', startSelection).unbind('mouseup', cancelSelection);
}
//鼠标在按下时调用的函数
function imgMouseDown(event){
$(document).mousemove(startSelection).mouseup(cancelSelection);
}
$img.bind("mousedown",imgMouseDown)