javascript - jQuery UI 交换不同 div 元素中的元素

标签 javascript jquery

我想做的是交换不同 div 元素中的元素。这是我的代码:JSfiddle

每个 div 只能放置一个元素。如果 drop_ div 已删除元素并且可删除元素从 #tire_deck 中删除,则必须拒绝它。如果元素从其他 div 中删除,则必须交换它。任何人都可以帮助我实现这一目标吗?

最佳答案

我采用的方法是在拖动开始时存储可拖动父项,然后使用它来确定我是交换子项还是停止操作。

这是 fiddle :

http://jsfiddle.net/vvn5S/

和 javascript:

        $(function () {
            var origin;
            $(".tire").draggable({
                appendTo: "body",
                cursor: "move",
                helper: 'clone',
                revert: "invalid",
                start: function (event, ui) {
                    origin = event.target.parentNode;
                }
            });
            $("#tire_deck").droppable({
                tolerance: "intersect",
                accept: ".tire",
                activeClass: "ui-state-default",
                hoverClass: "ui-state-hover",
                drop: function (event, ui) {
                    $("#tire_deck").append($(ui.draggable));
                }
            });
            $(".drop_1, .drop_2, .drop_3, .drop_4, .drop_5, .drop_6").droppable({
                tolerance: "intersect",
                accept: ".tire",
                drop: function (event, ui) {
                    if (this.children.length == 0) {
                        $(this).append($(ui.draggable));
                    } else {
                        if (origin.id !== "tire_deck") {
                            event.stopPropagation();
                            var copyNode = $(this).children().detach();
                            $(this).append($(ui.draggable));
                            $(origin).append(copyNode);
                        } else {
                            alert("Stopped!");
                        }
                    }
                }
            });
        });

关于javascript - jQuery UI 交换不同 div 元素中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16276768/

相关文章:

javascript - 根据下拉选择mysqli自动填充文本输入字段

javascript - 解析日期并使用setdate

javascript - 仅在需要时在 CSS 中强制执行最大高度

javascript - 关于 .Sortable() 中的句柄

javascript - 单击时如何更改链接的颜色?

jquery - 如何获取自动完成中所选项目的索引?

javascript - 有没有办法在 React 项目中使用 min.js 文件?这是一个好的做法吗?

javascript - 按钮连续只触发一次

javascript - DateTimePicker Bootstrap 在模糊时隐藏输入字段

javascript - 根据表格单元格设置 <h2> 文本 - jQuery