2009-09-03 12 views
2

を制御します(ソート可能な追加するために、次にjqueryのソート可能/選択:フィルタリングの子供が、私はそうのように、ネストされたdivを含むdiv要素を持っている

<div id="tree" class="tree"> 
<div class="node"><div class="handle"></div>Node 1<div class="ignore"></div> 
<div class="node"><div class="handle"></div>Node 2<div class="ignore"></div> 
<div class="node"><div class="handle"></div>Node 3<div class="ignore"></div> 
</div> 

)および選択()

$('.tree').sortable({ 
    handle:'.handle' 
}); 

$('.tree').selectable(); 

私はユーザーがリストを並べ替えることができるように、jQuery UIの「ソート可能な」ビヘイビアを使用します。問題は、ユーザーが "ignore"クラスでdivをクリックすると、 "selectable"ハイライトがそのdivに移動することです。私は選択可能でソート可能な振る舞いをフィルタリングして.nodeセットを捕まえるだけで、コントロールがもはやクリックを受け入れないツールボックスを含んでいるので、.ignoreテストを無視したい。

提案?

答えて

5

sortable()の場合、キャッチする項目を指定できます。

$('.tree').sortable({ 
    handle: '.handle', 
    items: 'div:not(.ignore)' 
}); 

私はそれを使用していないが、selectable()は、フィルタオプションを持っているように見えます。多分これを試してみてください:

$('.tree').selectable({ 
    filter: 'div:not(.ignore)' 
});