【问题标题】:JQuery UI Draggable Multiple revert OptionsJQuery UI 可拖动的多个还原选项
【发布时间】:2015-10-30 04:37:25
【问题描述】:

JQuery UI draggable 小部件有一个revert 选项,用于确定在什么情况下拖动的元素应恢复到其初始位置。

documentation 指定可以提供字符串"invalid",在这种情况下,如果未拖放到droppable 小部件上,则拖动的元素将恢复到其原始位置。另一种选择是为revert 提供一个函数,该函数将确定小部件是否应在拖动停止时恢复。

在我的情况下,我喜欢这两种行为;如果将小部件放在不可放置的元素上,我希望小部件恢复,但我也想做一些即时自定义验证,如果失败应该会导致恢复。如何将这两个功能结合起来?

【问题讨论】:

标签: javascript jquery-ui jquery-ui-draggable


【解决方案1】:

revert 是一个函数时,传递给它的第一个参数是droppablesortable 小部件(如果存在),否则为false。例如:

$(elt).draggable({
    revert: function(dropped) {
        var result = false;
        // dropped can safely be typecast to boolean
        // if you want to call jquery functions on it check for "false" first
        result = customLogic || (dropped && $(dropped).is(".valid-droppable-class") ); 
        return result;
    }
});

使用revert:"invalid" 等价于revert: function(dropped) { return dropped; }

【讨论】:

  • 是的,我想通了。事实证明,我的自定义验证逻辑是异步发生的,所以我不得不为此创建一棵不同的树。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-05
  • 1970-01-01
  • 1970-01-01
  • 2014-04-30
  • 2018-04-14
  • 1970-01-01
相关资源
最近更新 更多