2013-03-25 52 views
0

我有這樣的HTML標記:jquery-ui連接可排序:如何隱藏/顯示第一項?

<ul id="sortable1" class="connectedSortable"> 
    <li class="ui-state-default">Item 1</li> 
    <li class="ui-state-default">Item 2</li> 
    <li class="ui-state-default">Item 3</li> 
    <li class="ui-state-default">Item 4</li> 
    <li class="ui-state-default">Item 5</li> 
</ul> 

<ul id="sortable2" class="connectedSortable"> 
    <li class="ui-state-highlight">Drop item here</li> 
</ul> 

當至少一個項目是從#sortable1降至#sortable2,我想補充類 「隱藏」 到:

<li class="ui-state-highlight">Drop item here</li> 

剛爲...隱藏它,因爲這個「佔位」現在是無用的,所以就變成:

<ul id="sortable2" class="connectedSortable"> 
    <li class="ui-state-highlight hide">Drop item here</li> 
</ul> 

然後,如果所有項目都來自#sortable2跌回#sortable1,類hide應該再次移除,以顯示「佔位符」返回

任何想法,請?謝謝!

+0

你嘗試處理'update'事件,並從那裏工作的方式? – 2013-03-25 19:48:09

+0

有很多方法可以幫助您嘗試某些事情,並在遇到障礙時尋求幫助。 – isherwood 2013-03-25 20:19:55

回答

0

好,我知道......

<ul id="sortable2" class="connectedSortable"> 
    <li class="ui-state-highlight placeholder">Drop item here</li> 
</ul> 

... 

$('#sortable2').sortable({ 
    items: 'li:not(.placeholder)', 
    connectWith: '.connectedSortable', 
    update: function(){ 
     var placeholder = $(this).children('.placeholder'); 
     ($(this).children().length > 1) ? placeholder.hide() : placeholder.show(); 
    } 
}).disableSelection();