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

原文地址:https://www.cnblogs.com/skura23/p/9934454.html

时间: 2024-10-13 03:19:41

jquery为表格行添加上下移动画效果的相关文章

miniui 给表格行添加监听事件的几种方法以及点击某列列名数据不能排序的问题

最近在使用miniui框架做开发,在做表格行的点击监听事件中发现了几个属性,都可以起到监听效果但是执行的结果却大有不同.好了废话不多说,直接上代码. <div id="pageGrid" class="mini-datagrid" style="width: 100%; height: 100%; border:0;" url="${ctx}/tAXINFO/queryRepeat" autoload="tru

ToolStripMenuItem控件实现DatagridView行的上下移

/*--------------行上移------------------*/ 1 private void 上移ToolStripMenuItem_Click(object sender, EventArgs e) 2 { 3 DataGridView curgrd = null; 4 curgrd = dgvSub; 5 6 if (curgrd.CurrentRow == null) 7 return; 8 9 curgrd.EndEdit(); 10 11 int selectedRow

jquery更改表格行顺序实例

使用jquery写的更改表格行顺序的小功能表格部分: 复制代码代码如下: <table class="table" id="test_table">  < thead> < tr>  < th>时间</th> < th>详情</th>  < th>操作</th> < /tr>  < /thead> < tbody> <

CSS3使用Animation为同一个元素添加多个动画效果

本篇文章由:http://xinpure.com/css3-animation-for-the-same-element-multiple-animation-effects/ CSS3 Animation 并未提供 给一个元素同时添加多个动画效果的方法,就是说一个元素,只能给它定义一个动画效果,不能同时定义. 需求说明 比如说,我想实现一个这样的动画效果: 一颗星星从上往下滑落,当滑落到指定位置时开始闪烁 这里就用到了两个动画效果: 1. 从上往下滑落 (单次动画) 2. 闪烁 (循环动画)

用HTML和CSS实现WWDC 2015上的动画效果

用HTML和CSS实现WWDC 2015上的动画效果 动画效果WWDC 2015 原文:https://cssanimation.rocks/wwdc15/ 译者:周晓楷(@Helkyle) 每年,苹果都会召开一次重大的会议.WWDC(苹果开发者大会)是iOS开发者和OSX开发者学习苹果先进高科技和移动设备与桌面软件新概念的好机会. 每一年的这个时候,他们都会制造出很多新创意,今年,我被一个用简单圆圈和形状制作出来的图标所惊艳,于是我决定用HTML和CSS来实现它. WWDC 15邀请卡 苹果的

drupal7 如何将一个date字段添加上日期插件效果

//这里以created字段为例子 function Hook_form_alter($form,$form_state,$form_id){ $form['created']['#type'] = 'date_popup'; $form['created']['#date_format'] = 'Y-m-d'; $form['created']['#size'] = 20; $form['created']['#attributes']['readonly'] = true; $form['c

【FIR.im赞助】jQuery编程挑战#012:生成菜单添加和删除动画效果

申请达人,去除赞助商链接 定义如下HTML代码: <!-- HTML代码片段中请勿添加<body>标签 //--> <ul id="container"> <li>Java<i class="fa fa-times pull-right"></i></li> <li>Javascript<i class="fa fa-times pull-right&qu

使用jquery创建表格,添加、删除行

最近搞前端,某页面功能中需要动态添加和删除表格行. 比较常用的场景是通过一个添加按钮添加表格行,每一行都有一个删除按钮进行删除. 谷歌了一下找到一个示例代码挺适合新手学习使用的. 效果如下: HTML代码如下: 1 <label>Please indicate the number of attendees in your group including yourself. 2 <select id="participants" class="input-m

jQuery 特效:盒子破碎和移动动画效果

今天,我们将创建一个使用 jQuery 制作的非常甜蜜的动画效果.我们的想法是在网站的顶部有小盒子,当一个菜单项被点击时,箱子动画形成的主要内容区域分散在各处.我们会用一些不同的动画效果,我们将为菜单项添加选项. 效果演示     插件下载 您可能感兴趣的相关文章 Web 开发中很实用的10个效果[源码下载] 精心挑选的优秀jQuery Ajax分页插件和教程 12个让人惊叹的的创意的 404 错误页面设计 让网站动起来!12款优秀的 jQuery 动画插件 十分惊艳的8个 HTML5 & Ja