我在特定条件下停止jQuery.draggable。这很好用,但我意识到我拖动对象的样式是在我的draggable()调用中定义的
$target.draggable({
cursor: 'no-drop',
zIndex: 1000,
opacity: 0.7,
未恢复。 我找到的唯一解决方案是删除所有css属性。因此,我的代码看起来像:
function initDrag($target) {
$target.draggable({
cursor: 'no-drop',
zIndex: 1000,
opacity: 0.7,
start: function (event, ui) {
if (!myDragCondition()) {
$('body').css('cursor', '');
$target.css('z-index', '');
$target.css('opacity', '');
return false;
}
else {
/*
* Some more code...
*/
return true;
}
},
revert: 'invalid',
drag: function (event, ui) {
/*
* My code here...
*/
},
stop: function (event, ui) {
/*
* My code here...
*/
}
});
}
但我对我的解决方案不是很满意,因为它很大程度上取决于jQuery如何实现其样式更改。还有更好的方法吗?