2013-04-17 73 views
0

我在JQuery中遇到了一個小問題。選擇函數JQueryUI .selectable events

我想要做的是將一些事件綁定到每個選項卡上。

我可以處理每個標籤

的點擊事件,但問題是,當我選擇兩個或多個選項卡,

我想不通我怎麼處理它。

例如,如果我點擊(也只是通過拖動選擇)一個選項卡,

一些排序函數必須是作品和

也各不同的定義函數必須在拖動多重選擇的作品。

Ofcourse,我可以使用一些標誌騙來解決這個

但這並不是我真正想要的。

有沒有人有一些有效的解決方案?

$("#selectable2").selectable(
    { 
     selected: function() 
     { 
      $(".arcplan").on("selectableselected", function() 
      { 
       $(".big-tile").hide(200); 
      }) 

     } 
    }); 


<div class="menu"> 
    <div class="inner"> 
     <ol id="selectable2"> 
      <li class="alltype2">all</li> 
      <li class="arcplan">Arcplan</li> 
      <li class="msbi">MSBI</li></li> 
      <li class="excel">Excel</li> 
      <li class="etc">etc</li> 
     </ol> 
    </div> 
</div> 
+0

Yur code is missing –

+0

$(「#selectable」)。selectable();只是我所做的一切。 – terrizer

+0

看起來像一首詩...... :),沒有代碼/小提琴...... :( – PSL

回答

0

嘗試

$("#selectable2").selectable({ 
    selected : function(event, ui) { 
    if($(ui.selected).hasClass('arcplan')){ 
     $(".big-tile").hide(200); 
    } 
    } 
}); 

演示:Fiddle - 當你點擊Arcplanbig-tile元素是隱藏的,如果你選擇別的它顯示回來。

+0

作品完美,正是我想要的。我從來沒有想過要嘗試使用hasclass進行過濾。原諒這個小新手。 thx阿倫! – terrizer

0

從文檔(http://api.jqueryui.com/selectable/#event-selected):

$('#selectable2').selectable(); 
$('#selectable2').on('selectableselected', function(event, ui){ 
    doSomethingWithTheSelected(event.target); 
}); 
+0

我剛換了一些代碼根據你給的下面的例子,但仍然不起作用,請給我一些提示.. – terrizer

+0

我不確定你想要做什麼。你能創建一個jsfiddle嗎? –

+0

看起來你有幾個你的代碼中有錯誤,你使用的是類選擇器而不是id,並且你正在將可選擇的事件監聽器註冊到一個隨機元素中 –