我正在使用以下代码来允许.dataCard
类的所有成员向左或向右拖动,但恢复到原来的位置。
$('.dataCard').draggable({ axis: 'x', revert: true });
如何判断物品与原始位置的距离?
我正在使用以下代码来允许.dataCard
类的所有成员向左或向右拖动,但恢复到原来的位置。
$('.dataCard').draggable({ axis: 'x', revert: true });
如何判断物品与原始位置的距离?
只穿过一个轴..
drag: function (e, ui){
y2 = ui.position.top;
x2 = ui.position.left;
if(y2>100){alert("greater");}
if(y2>100){alert("greater");}
}
您可以使用CSS 属性来确定它在事件中left
移动了多远:revert
revert: function() {
alert($(this).css('left'));
return true;
}
实际的数学是三角函数,你需要计算距离,即使是对角线。
开始时:
start_position = ui.position;
然后在拖动:每次鼠标移动都会发生这种情况,您可以计算距离
if ( lineDistance( start_position , ui.position ) > 100 )
{
//do something here
}
神奇的功能是这样的:
function lineDistance( point1, point2)
{
var xs = 0;
var ys = 0;
xs = point2.x - point1.x;
xs = xs * xs;
ys = point2.y - point1.y;
ys = ys * ys;
return Math.sqrt( xs + ys );
}