如何取消 jQuery droppable 的放置操作?

发布于 2024-10-17 21:02:43 字数 93 浏览 4 评论 0原文

我有一个 jQuery UI droppable,它接受draggables。如果满足某些条件,我不想允许删除操作。

如何取消删除操作并执行类似恢复的操作?

I have a jQuery UI droppable which accepts draggables. I want to not allow the drop action if certain conditions are met.

How do I cancel the drop action and do a revert like action?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

独自←快乐 2024-10-24 21:02:43

可放置小部件上的 accept 选项:

所有与选择器匹配的可拖动对象
将被接受。如果一个函数是
指定后,该函数将被调用
对于页面上的每个可拖动对象(传递
作为第一个参数
函数),提供自定义过滤器。
如果满足以下条件,该函数应返回 true:
可拖动应该被接受。

与 Draggable 上的 revert 选项相结合应该可以得到什么您需要:

$(".draggable").draggable({
    revert: 'invalid'
});

$("#droppable").droppable({
    accept: function(el) {
        /* This is a filter function, you can perform logic here 
           depending on the element being filtered: */
        return el.hasClass('acceptable');
    }
});

请注意,在这个特定示例中,您还可以编写 accept: ".acceptable",这将使 droppable 只接受类 acceptable 的元素。因此,另一种选择是当您的自定义事件发生时,只需根据需要应用或删除 acceptable 类。

这是一个示例: http://jsfiddle.net/andrewwhitaker/rUgJF/3/

底部有一个关闭“可接受性”的链接。

The accept option on the droppable widget:

All draggables that match the selector
will be accepted. If a function is
specified, the function will be called
for each draggable on the page (passed
as the first argument to the
function), to provide a custom filter.
The function should return true if the
draggable should be accepted.

combined with the revert option on draggable should get you what you need:

$(".draggable").draggable({
    revert: 'invalid'
});

$("#droppable").droppable({
    accept: function(el) {
        /* This is a filter function, you can perform logic here 
           depending on the element being filtered: */
        return el.hasClass('acceptable');
    }
});

Note that in this specific example, you could also write accept: ".acceptable", which would make the droppable only accept elements with class acceptable. So another option is when your custom event happens, just apply or remove the acceptable class as necessary.

Here's an example: http://jsfiddle.net/andrewwhitaker/rUgJF/3/

The bottom has a link toggling "acceptability" on an off.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文