jquery为表格行添加上下移动画效果

Posted skura23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery为表格行添加上下移动画效果相关的知识,希望对你有一定的参考价值。

为项目列表项添加上下移动动画。首先想使用jquery animate来做到这一点。
但我用的是table和tr作为列表和列表项,但jquery动画方法不支持table里的tr(Animations are not supported on table rows.)。
所以设法用其他解决方案。最后使用jq方法配合 CSS3 transform 实现。

/** * @param {Object} $fstElem 目标行 * @param {Object} $scdElem 被换行 * @param {Number} dirflag 移动方向 flag, 2 是上移, 1 是下移. * @param {Function} cb 回调 */ function animatedMove($fstElem, $scdElem, dirflag, cb) { var fstdir, scddir; // move up if (dirflag == 2) { fstdir = ‘-‘; scddir = ‘‘; } else if(dirflag == 1){ // move down fstdir = ‘‘; scddir = ‘-‘; } // add animations $fstElem.css({ transform: ‘translateY(‘+fstdir+$scdElem.height()+‘px)‘, transition: ‘transform 0.4s‘ }) $scdElem.css({ transform: ‘translateY(‘+scddir+$fstElem.height()+‘px)‘, transition: ‘transform 0.4s‘ }) // 重置css3样式; 触发回调函数 setTimeout(function(){ $fstElem.css({ transform: ‘none‘, transition: ‘unset‘ }) $scdElem.css({ transform: ‘none‘, transition: ‘unset‘ }) if (dirflag == 2) { $fstElem.after($scdElem) } else if(dirflag == 1){ $fstElem.before($scdElem) } cb && cb() }, 400) }

jsfiddle: DEMO




以上是关于jquery为表格行添加上下移动画效果的主要内容,如果未能解决你的问题,请参考以下文章

jQuery 效果方法

Jquery怎么制作下拉效果

使用 jQuery 为表格行的背景颜色设置动画

动画移除片段

怎么实现jquery的一个等待效果?当鼠标移开时等待3秒钟执行函数。

几个非常实用的JQuery代码片段