2011-12-05 27 views
2

我有一個div,其中包含不填滿該div的兩個元素。我想選擇元素來選擇包含div。另外,我希望點擊div但在元素外部不會選擇元素(並觸發取消選擇)。我該怎麼做呢?如何使用jQuerys Selectable選擇div的子項作爲句柄?

小提琴:http://jsfiddle.net/U5cmy/1/

+0

對不起,你想做什麼?通過選擇父div你想自動選擇兒童divs? –

+0

我希望父div是可選擇的,但只能通過點擊子div(即不是div內的空白空間而是兒童外) – chacham15

回答

0
$("#all").on("mousedown", function(event) { 
    if (!$(event.target).is(".item-top, .item-bottom") && !$(event.target).hasClass("ui-selected")) { 
     event.stopImmediatePropagation(); 
     return false; 
    } 
}); 

$('#all').selectable({ 
    start: function(event, ui) { 
     $(this).data("isDeselect", $(event.target).is(".item")) 
    }, 
    selected: function(e, ui) { 
     if ($(this).data("isDeselect") === true) { 
      $(ui.selected).removeClass("ui-selected"); 
      ui.selected = null; 
     } 
    } 
}); 

小提琴:http://jsfiddle.net/1stein/sNMw3/