【发布时间】:2013-01-06 00:28:59
【问题描述】:
我有一个使用 jqueryUI 可排序的可排序表,并且排序有 sildeUp 和 down 延迟,因此看起来很流畅。
但我也有一个带有虚线边框样式的占位符元素,因此用户知道该元素将被放置在哪里。
问题是在拖动一个元素时,虚线占位符的高度一直被动画化,看起来真的很丑。
基本上我希望虚线元素是不可见的,直到有足够空间放置它,然后显示它。现在它从 0 高度动画到全高度。如果有足够的空间放置它,它会以全高显示会更好。
我怎样才能延迟它?我正在使用 css() 设置边框,但不知道如何让它等待。
这是我的代码
http://jsbin.com/ucopun/122/edit
$("#myTable tbody").sortable({
helper: fixhelper,
revert: 300,
placeholder: 'ui-placeholder',
'start': function (event, ui) {
ui.placeholder.html('<td class="uisort" colspan="3"></td>').slideUp(200);
ui.placeholder.children("td").css({'border': 'dashed 2px black'});
},
change: function (e,ui){
$(ui.placeholder).hide().slideDown(200);
}
});
$("#myTable tbody").on('sortstart', function(event, ui) {
$("td").css({'background-color': '#313131'});
$(ui.item).children("td").css({'background-color': '#fff'});
});
$("#myTable tbody").on('mouseup', function(event, ui) {
$("td").css({'background-color': '#fff'});
});
【问题讨论】:
标签: jquery jquery-ui jquery-ui-sortable