移动表格行 解决低版本IE fadeIn fadeOut 失效问题
在维护一个内部使用的web工具的时候,需要在表格里配置参数,并且支持参数列的上下移动,有jQuery-UI工具支持对表格列的拖动,但是此处不追求效果,而且旧系统页面兼容性很差,无奈只能做上下移动的按钮。
在表格每行的最后一列增加一个操作按钮。
<tr style='filter:inherit'><td style='filter:inherit'></td>
<td style='filter:inherit'><a onclick='moveup(this)' href='#' class='up' > 上移</a></td>
<td style='filter:inherit'><a onclick='movedown(this)' href='#' class='down' > 下移</a></td>
function moveup(thistr) {
//var $up = $(".up");
//获取按钮所在的行,以下两种写法都是可行的。
// var $tr = $(this).parents("tr");
var $tr = $(thistr).parent().parent();
if ($tr.index() != 0) {//是否为第一行,不过这里不判断第一行也不会有上移效果
$tr.animate({opacity: "0"}).animate({opacity: "1"});
//以下两种方式都可以将此行插入到前一行的前面,也就是实现两行的互换。
// $tr.prev().before($tr);
$tr.insertBefore($tr.prev());
resetTablistRowNumber($('#listTabReq'));//重设列的序号
resetTablistRowNumber($('#listTabResp'));
}
function movedown(thistr) {
//var $tr = $(thistr).parent().parent();
var $tr = $(thistr).parents("tr");
$tr.animate({opacity:"0"});
$tr.next().after($tr);
$tr.animate({opacity: "1"});
resetTablistRowNumber($('#listTabReq'));
resetTablistRowNumber($('#listTabResp'));
}
以上代码可以解决ie8下jQuery的fadeIn fadeOut 失效的问题,实测动画没有问题,而且也不会出现任何偏移。
说明:
1.fadeIn fadeOut 问题主要是在ie8环境下,动画失效,我还遇到更奇葩的问题,就是 fadeIn 之后 无法fadeOut出来,查了资料说是在动画元素的子元素加上 style='filter:inherit' 属性,可以实现动画。此处我没有设置display属性。
2.可以实现淡入淡出之后,发现每一次操作之后,结果页面都自动向下拖了一行,在另外一个例子里是右偏了一点,这点可通过animate设置动画,这时便不会有页面的奇葩偏移了。
参考资料:
http://www.simonbattersby.com/blog/2010/10/jquery-fadein-and-fadeout-problems-with-ie8/
移动表格行 解决低版本IE fadeIn fadeOut 失效问题的更多相关文章
- 解决opacity属性在低版本IE浏览器下失效的方法
以前,一直都以为ie9以下的版本不支持opacity属性.所以就同时使用 opacity和ie独特的filter蒙版.但是有些时候需要一些动态的效果,就比如层的渐渐消失,隐藏,就需要使用动态变化的op ...
- 记一次如何解决低版本jar包里面的bug,不适宜替换成高版本的经历
背景:目前正在迭代开发的项目,应用户要求新增一个电子文档转换的功能,即将不标准的excel文件转换为标准的excel文件(标准模板). 选择:pio ,本项目里面本来就有poi的jar包 问题:项目里 ...
- 解决低版本Eclipse安装Findbugs插件无法显示问题
问题描述 Eclipse安装Findbugs,显示安装成功,但是重启Eclipse在[Window]-[show view]-[other]中没有显示 原因 Eclipse版本太低,新版的Findbu ...
- 解决低版本IE关于html5新特性的兼容性问题html5shiv.js和Respond.js,以及excanvas.js解决低版本IE不支持canvas的问题
插件:html5shiv.js 让IE9以下版本支持html5新标签,git地址https://github.com/aFarkas/html5shiv 用于解决IE9以下版本浏览器对HTML5新增标 ...
- 解决低版本Xcode不支持高版本iOS真机调试的问题
1.现象截图 Could not locate device support files. This iPhone 6s is running iOS 11.1 (15B93), which may ...
- 解决低版本chrome浏览器不支持es6 Array.find()
if (!Array.prototype.find) { Array.prototype.find = function(predicate) { 'use strict'; if ( ...
- sqlserver 高版本迁移到低版本
奇葩事不少, 这不, 得把 sqlserver 2014 迁移到 2012 开始以为用备份再还原的方法就可以, 谁知道最终兼容性的问题无法解决(低版本不兼容高版本备份的文件, 即便在高版本中选择了兼 ...
- FIREDAC连接MSSQL 2000报不能支持连接MSSQL2000及更低版本的解决办法
FIREDAC连接MSSQL 2000的时候会报错,原因是MSSQL CLIENT11或MSSQL CLIENT10客户端驱动程序已经不支持连接MSSQL2000及更低版本的数据库. 解决办法: 设置 ...
- Android较低版本(<5.2) 页面默认Select选择框效果的BUG解决
Bug描述: 使用低版本安卓(<5.2),在微信上打开网页,点击下拉框,会出现如下图所示的用来展示select选项的弹出框: 在选项较少的时候,可以向下滑动,将选项滑到底部 滑动前: 滑动后: ...
随机推荐
- Parameter of Revit API – 19: Add FamilyParameter (FamilyManager.AddParameter)
New family parameters (FamilyParameter) can be added to a family document through the FamilyManage ...
- HDOJ-1002
用java写大数,感觉就是BUG import java.math.*; import java.io.*; import java.util.*; public class Main{ public ...
- 浅谈Javascript中Promise对象的实现
https://segmentfault.com/a/1190000000684654 What? Promise是CommonJS的规范之一,拥有resolve.reject.done.fail.t ...
- [备份]Emacs配置文件
(set-background-color "gray20")(set-foreground-color "wheat") (tool-bar-mode -1) ...
- Code[VS] 1022 覆盖 题解
Code[VS] 1022 覆盖 题解 Hungary Algorithm 题目传送门:Code[VS] 1022 题目描述 Description 有一个N×M的单位方格中,其中有些方格是水塘,其 ...
- 【BZOJ】2078: [POI2004]WYS
题意: 给n个互不相交的多边形(边均平行于坐标轴),问最大深度.深度的定义是,若多边形A被多边形B包含,则\(dep[A]=max(dep[B])+1\).坐标系的深度为0.(n<=40000, ...
- 【ZOJ】1015 Fishing Net
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1015 题意:给出一个n个点的无向图,询问是否为弦图,弦图定义为对于图中任意 ...
- storyboard自动布局时,代码修改 constraint 的值,没有反应
从 width equalto 其他控件的 width 到 当前控件固定的 width, 再到不固定当前控件的 width, 只固定当前控件的 trailing 是一个不错的思想.
- Crystal Reports 2008(水晶报表) 第一个报表
学习Craystal Reports 2008的时候,光看说明文档,很多东西看了就忘了. 我在看文档的时候,是跟着文档上面来做的. 这样边看边做,效果还不错哈 下面就是我的第一个demo 先看看效果: ...
- 深入浅出 - Android系统移植与平台开发(九)- JNI介绍
作者:唐老师,华清远见嵌入式学院讲师. JNI是在学习Android HAL时必须要面临一个知识点,如果你不了解它的机制,不了解它的使用方式,你会被本地代码绕的晕头转向,JNI作为一个中间语言的翻译官 ...