Script.aculo.us 拖放'n' - 恢复结束条件



如果条件返回false,我将尝试恢复可拖动。例如,我想做以下事情:

new Draggable('myelement', {
    onStart: function() {
      // do something
    },
    onEnd: function() {
      var condition = getConditionVal();
      if (!condition) revert to original position
      else {
         // do something else
      }
    }
});

这可能吗?不确定"可丢弃"在这种情况下是否有效,因为可丢弃区域是动态变化的。

Scriptaculous拖放旨在轻松添加各种花哨的东西。当然,您可以随时编辑恢复选项。

要更改可拖动的恢复选项的值,只需重置恢复选项:

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在onEnd事件调用之后立即进行还原,这给了我们在执行之前更改它的可能性。

Scriptaculous的拖放代码并不是为有条件还原而设计的。您可以进行还原,也可以不进行还原。遗憾的是,仅此而已。

这个功能已经被要求了很多次,但多年来脚本/原型的受欢迎程度已经下降,所以这个功能是否会被添加还值得怀疑。

最新更新