在我使用可排序的时候,jquery中的insertAfter不起作用

时间:2017-03-01 21:52:49

标签: jquery jquery-ui jquery-plugins jquery-ui-sortable jquery-ui-droppable

我正在使用droppable和sortable jquery插件,一切看起来都不错。我唯一的问题是btw点击和删除,我找到了以下链接来解决它。

http://wowmotty.blogspot.ca/2010/07/how-to-click-or-dragsort-object.html

以下是我的代码的一部分:

  $("#content").sortable({
        items: "li:not(.not-dragable,.dummyNotActive)",
        revert: true,
        start: function (event, ui) {
            $(".nav-item").css("pointer-events", "none");
            that.navBarListInOrder.list = $(this).sortable('toArray');
          },
          update: function (event, ui) {

          }).find('li').bind('mousedown', function (e) {
          // set time on mousedown (start of click)
          this.last = e.timeStamp;
        // clear moved flag
          this.moved = false;
          }).bind('mouseup mousemove', function (e) {
          // flag showing that the mouse had been moved
          if (e.type == 'mousemove') {
            this.moved = true;
            // no need to continue
            return;
            }
          this.diff = e.timeStamp - this.last;
          if (this.diff < 1000 ) {
            $("#" +       $(this).attr("id")).removeClass("dummyActive").addClass("dummyNotActive");
                $("#" +    $(this).attr("id")).hide().removeAttr("style").css({"background-color":    "#E5E8EC"}).insertAfter("#testLi").show('normal', function () {

                });
            }

          });

正如你所看到的那样,我已经绑定了(&#39; mouseup mousemove&#39;并根据我得到的值得到这个。我运行了一些代码行。现在我的问题就在于条件内:每行条件内部工作除了以下内容:

$(this).attr("id")).hide().removeAttr("style").css({"background-color":    "#E5E8EC"}).insertAfter("#testLi").show('normal', function () {

                });
            }

          });

即使我可以看到jquery效果,但元素不会插入到#testLi之后的正确位置并且它保持在相同的位置。有趣的一点是,当我通过点击事件触发inserAfter时它工作正常。我不知道这是否与sortable有关,或者我错误地使用了jquery.insertA。有人可以帮忙吗?

0 个答案:

没有答案