【问题标题】:How to prevent jQuery Droppable from accepting certain Draggable?如何防止 jQuery Droppable 接受某些 Draggable?
【发布时间】:2011-04-21 06:28:36
【问题描述】:

我正在创建一个包含“组”可放置小部件的页面,每个可拖动小部件只能放置在一组可放置小部件上。

我可以通过以下代码实现这一点:

$("div.droppable").droppable({
    //accept: ".draggable",
    accept: function (draggable) {
        if ($(this).attr("question_id") != null) {
            if ($(this).attr("question_id") == draggable.attr("question_id")) return true;
        }
        return false;
    });

但是,现在我遇到了一些麻烦。放置后,我无法像以前那样在同一组中的可放置对象周围移动可拖动对象。我可以将它放在一个 droppable 上一次,然后将它移动到另一个,但我无法将它移回第一个 droppable。

有人知道会发生什么吗?任何意见将不胜感激。

【问题讨论】:

    标签: jquery draggable droppable


    【解决方案1】:

    不知道您的代码中出现了什么问题。我创建了这个test case on jsFiddle,它按预期工作。如本测试用例所示,我使用.data 来检索问题 ID。

    我希望这会有所帮助!

    【讨论】:

    • 很好,它有效。我正在使用
      ...
      。不知道为什么它不能以这种方式工作。
    • 很高兴听到!可能是您使用下划线作为分隔符。此外,在处理自定义属性时,请使用数据前缀,因为它是由 HTML5 标准定义的,并且可以通过 jQuery 的 .data 函数轻松访问。阅读有关该主题的article by John Resig
    • 不,我在可拖动和可放置事件中都使用下划线。并感谢您的帮助和链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-21
    • 1970-01-01
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-17
    相关资源
    最近更新 更多