苦苦挣扎jquery ui sortable和tabs(想要在标签周围移动项目)

关于这个主题的文档很清楚: http : //jqueryui.com/sortable/#connect-lists-through-tabs

我试图在我的项目中做同样的事情,但是我无法将元素从1个标签移动到另一个标签。 有时没有任何事情发生,有时项目从当前列表中消失(显示:无),没有别的……

我把jsfiddle放在一起来展示我所看到的。

也许我只是看不出我犯的小错:S

http://jsfiddle.net/46zqm/1/

$(".word-list").sortable({ tolerance: 'pointer', cursor: 'move', forcePlaceholderSize: true, dropOnEmpty: true, connectWith: 'ol.word-list', placeholder: "ui-state-highlight" }).disableSelection(); // Words tabs var $tabs = $("#tabs").tabs(); // Make tab names dropable var $tab_items = $("#tabs-nav li", $tabs).droppable({ accept: ".word-list li", hoverClass: "ui-state-hover", tolerance: 'pointer', drop: function (event, ui) { var $item = $(this); var $list = $($item.find("a").attr("href")).find(".word-list"); ui.draggable.hide("fast", function () { $tabs.tabs("option", "active", $tab_items.index($item)); $(this).appendTo($list).show("slow"); }); } }); 

添加容差:指针在单调和拖放区域固定不一致。 但一般问题仍然存在。

我已经从JQuery Sortable文档中复制了推荐的HTML。 试试下面的HTML。

我用ID“tabs”包装了DIV中的所有标签,所有“word-list”类现在都包含在DIV中,并带有不同的标签ID。 我还将所有

    元素更改为

       

      Words

      • list 1
      • list 2
      • deleted

      这是JsFiddle

      杰米的回答让我得到了自己的解决方案:

       var $list = $($item.find("a").attr("href")); 

      代替:

       var $list = $($item.find("a").attr("href")).find(".word-list"); 

      不改变标记!