Когда я пытаюсь подключить 2 списка, разделенных вкладками, над вторым событием не запускается событие over.Событие, отличное от события, не срабатывающего на разных вкладках.
Вот мой HTML
<div id="TabSet" class="tabs">
<ul>
<li class="tab"><a href="#tabs-1">Nunc tincidunt</a></li>
<li class="tab"><a href="#tabs-2">Proin dolor</a></li>
</ul>
<div id="tabs-1">
<div style="padding: 10px;">
<ul class="list" id="list1">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
</ul>
<ul class="list" id="list2">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
</ul>
<br style="clear: both;" />
</div>
</div>
<div id="tabs-2">
<div style="padding: 10px;">
<ul class="list" id="list3">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
</ul>
<ul class="list" id="list4">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
</ul>
<br style="clear: both;" />
</div>
</div>
</div>
И Javascript
$(function() {
$(".list").sortable({
connectWith: ".list"
}).disableSelection();
var $tabs = $(".tabs").tabs();
//for changing tab on over
$(".tab").droppable({
over: function(event, ui) {
var $item = $(this);
$tabs.tabs("select", $item.find("a").attr("href"));
}
});
$(".list").droppable({
over: function(event, ui) {
var $item = $(this);
$item.addClass('ui-state-highlight');
console.log($item.closest('ul').attr('id'));
},
out: function(event, ui) {
var $item = $(this);
$item.removeClass('ui-state-highlight');
ui.draggable.appendTo('#TabSet').show('slow');
}
});
});
Я создал рабочий пример на jsfiddle.
Когда вы перетаскиваете элемент в списках на первой вкладке, список подсвечивается, это не так на второй вкладке. Что еще более странно, так это то, что когда я печатаю идентификатор зависающих списков, я получаю идентификатор с первой вкладки, а не на вторую вкладку.
Любая идея, как решить эту проблему?