如果条件返回false,我正在尝试恢复一个可拖动的。例如,我想做以下事情:
new Draggable('myelement', {
onStart: function() {
// do something
},
onEnd: function() {
var condition = getConditionVal();
if (!condition) revert to original position
else {
// do something else
}
}
});
这可能吗?由于可放置区域动态变化,因此不确定“droppables”是否适用于此情况。
答案 0 :(得分:3)
Scriptaculous拖放旨在轻松添加各种花哨的东西。 当然,您可以随时编辑还原选项。
要更改可拖动的revert-option的值,只需重置revert-option:
var myDraggable = new Draggable('myelement', {
onStart: function() {
// do something
},
onEnd: function() {
var condition = getConditionVal();
if (!condition){
myDraggable.options.revert = true;
}
else {
myDraggable.options.revert = false;
// do something else
}
};
});
Scriptaculous does the revert right after the onEnd event call, 这使我们有可能在执行之前改变它。
答案 1 :(得分:0)
Scriptaculous的拖放代码并非设计为具有条件还原。您可以恢复或不恢复。遗憾的是,这就是全部。
此功能已被多次请求,但脚本/原型多年来已逐渐流行,因此这个功能的添加值得怀疑。