Jquery ui 在jQuery UI中恢复或执行函数
我希望将元素恢复到它的原始位置,如果它没有被拖动超过一定距离的话。 如果元素在X轴上被拖动的距离超过了设定的距离,我希望执行一个函数,将被拖动的元素滑出视口并滑回视口。我让它跟踪距离,但现在不知何故,如果不满足条件,它将不会返回函数为真或假。。。我得到一个未定义D的错误。有人知道会出什么问题吗 我尝试过不同的解决方案,但两种方案都无法奏效,也无法在网上找到答案 这就是我迄今为止所做的:Jquery ui 在jQuery UI中恢复或执行函数,jquery-ui,undefined,draggable,revert,Jquery Ui,Undefined,Draggable,Revert,我希望将元素恢复到它的原始位置,如果它没有被拖动超过一定距离的话。 如果元素在X轴上被拖动的距离超过了设定的距离,我希望执行一个函数,将被拖动的元素滑出视口并滑回视口。我让它跟踪距离,但现在不知何故,如果不满足条件,它将不会返回函数为真或假。。。我得到一个未定义D的错误。有人知道会出什么问题吗 我尝试过不同的解决方案,但两种方案都无法奏效,也无法在网上找到答案 这就是我迄今为止所做的: 你做得太过分了。测量单轴上行驶的距离非常简单: revert: function() { var or
你做得太过分了。测量单轴上行驶的距离非常简单:
revert: function() {
var orig = $(this).data("uiDraggable").originalPosition.left;
var curr = $(this).data("uiDraggable").position.left;
return curr - orig > 100;
}
看一个工作
请注意,data
对象的名称对于不同版本的jQueryUI是不同的。对于您在小提琴中选择的一个,它是可拖动的
,对于较新的一个,它是可拖动的
您的代码中还有许多其他错误,我在小提琴中对此进行了注释:
- 实际上,您还没有在
function(){}
- 事件绑定器和异步回调不像您在
和mousedown
中所假设的那样工作。mouseup
条件中的d>100
变量将始终为d
未定义的
- 在事件处理程序中使用选择器(
)通常是不好的,因为您可以使用“.video”
或this
获取相同的对象event.currentTarget
- 不要以逗号结束对象中的最后一个属性。Internet explorer随机决定讨厌它
revert: function() {
var orig = $(this).data("uiDraggable").originalPosition.left;
var curr = $(this).data("uiDraggable").position.left;
return curr - orig > 100;
}