我遇到了jquery ui sortable的问题,我无法拖动某些项目(因为项目元素的高度,我认为是基于的)
<div class="container">
<fieldset>
<legend>handle 1 THIS CAN'T BE DRAGGED BELOW HANDLE 2</legend>
<div>blah<br /></div>
</fieldset>
<fieldset>
<legend>handle 2 BUT I CAN DRAG THIS ABOVE HANDLE 1</legend>
<div style="display: none">blah<br /></div>
</fieldset>
$(".container").sortable({
axis: 'y',
handle: '> legend',
containment: 'parent',
/*cursorAt: {top: 1},
start: function(event, ui) {
ui.placeholder.height(ui.item.height());
$(this).sortable('refreshPositions');
},*/
});
见http://jsfiddle.net/ADyhR/10/ 编辑:它似乎在jquery ui 1.8.9中工作。它只是1.8.18中的一个错误吗?
注释掉的javascript行是我尝试但没有奏效的东西,但我想我可能只是稍微偏离了我如何使用它们。
答案 0 :(得分:0)
您可以使用tolerance
选项并将其值设置为tolerance: "pointer",
。我更新了您的DEMO并创建了NEW DEMO。
以下是添加了tolerance
选项的的JS代码:
$(".container").sortable({
axis: 'y',
tolerance: "pointer",
handle: '> legend',
containment: 'parent',
/*cursorAt: {top: 1},
start: function(event, ui) {
ui.placeholder.height(ui.item.height());
$(this).sortable('refreshPositions');
},*/
});