我在这里有一个我试图解释在代码笔中工作的演示:https ://codepen.io/voronroga/pen/gOgWjdj
我有一个基本表:
<table>
<tbody>
<tr>
<td>Cell Contents</td>
<td class="del">x</td>
</tr>
<tr>
<td>Cell Contents</td>
<td class="del">x</td>
</tr>
<tr>
<td>Cell Contents</td>
<td class="del">x</td>
</tr>
</tbody>
</table>
使用 JavaScript/jQuery 我想slideUp()
在单击该行中的删除按钮后使用 jQuery 动画来隐藏表格行。但是,表格行上没有播放动画(请参阅上面链接的代码笔)。
$('td.del').on('click', e => delCel(e));
function delCel(e) {
// What I want to work:
// $(e.target).parent().slideUp(1000);
// What actually Works:
$(e.target).parent().hide(1000);
}
因为slideUp()
,动画不播放,超时后元素突然消失。至少hide()
淡化文本和单元格边框,直到隐藏后,该行突然从表格中弹出。
那么如何让表格行向上滑动,就像它在其上方的行下方移动一样,并将该行下方表格中的元素与它一起向上拖动以获得平滑的动画?我的猜测是 jQuery 不太有能力做到这一点,所以如果我必须使用其他东西,我想这就是我要走的路。
如果最终更容易,请随意建议一种在 CSS/JS 中执行此操作的方法。