Web端的Tab控件在切换Tab时Load数据出错的处理
我们在应用Web端的Tab控件时,不管是Jquery easyui的还是Ext的Tab控件都会遇到一个问题,在Tab1正在加载数据的时候我们切换到Tab2,再切换回来,Load数据的控件就会出错,出错的情况有很多种,我做过测试这种情况在Chrome下面没有,IE和Firefox都存在,界面如下:
报错的情况会有很多种,但是究其原因,都是由于在切换Tab1到Tab2的时候,实际上将Tab1的display设置成none了,但是多数控件(比如Hightcharts、Ext、Map控件)在Load数据时如果当前的容器是隐藏状态就会出错。
解决方案1:切换到Tab2数据加载的时候,出现Working页面,不能够进行其他操作,但这个是垫底的方案,会影响到用户体验,如果此页面加载10秒,这10秒钟内,用户什么都不能做【备用】。
解决方案2:如果加载出错的情况记录到一个变量中,如果再次切换回此页面,如果发现加载错误,那么重新架加载,这种方案有个弊端是,切换回来时有一段时间的延迟响应,用户会看到出错的页面,再者就是比较难判断出来是否加载出错【不可行】。
解决方案3:修改Jquery easyui的源码,在切换Tab1到Tab2时,不隐藏Tab1,而是将Tab1的高度置成1,这样有个小问题就是如果Tab太多的情况,很多个1高度的元素会堆积,后来经过测试将Tab1的高度置成0也是可以的,OK,问题解决,代码如下【没有修改jQuery easyui源码,因为压缩后的没法修改,但是也没有找到未压缩的,只是在easyui加载完成后改变Tab的样式】:
$('#divReportTabs').children().last().children().each(function (index)
{
var display = $(this).css('display');
if (tabIndex != index)
{
$(this).show().height(0);
}
});
此段代码的逻辑就是切换到当前的Tab时,其他的Tab显示但是高度是0px【解决】。
Web端的Tab控件在切换Tab时Load数据出错的处理的更多相关文章
- Web端优秀图表控件
百度echart http://echarts.coding.io/doc/example.html C#+JQuery+.Ashx+百度Echarts 实现全国省市地图和饼状图动态数据图形报表的统计 ...
- 修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug
转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/41556615 在duilib中,按tab键会让焦点在Button一类的控 ...
- Web页面测试总结(控件类)
界面测试,最多的就是各种控件的功能测试,只有掌握了其测试要点,了解测试方法,总结各种测试情景,才能熟练测试Web页面. 一.输入框 输入框分为文本输入框,数字输入框.一般使用在填写输入的内容上,比如名 ...
- Android Tab控件简介
在Android中,Tab控件是一种很常用的控件:Tab控件即标签页,可以在一页中切换显示N页内容: Tab控件具有两种实现过程,一是在同一个Activity中切换显示不同的标签页,这种主要是通过修改 ...
- WEB页面常用基本控件测试用例
一.树控件的测试外观操作 1)项目中的所有树是否风格一致 2)树结构的默认状态是怎样的.比如默认树是否是展开,是展开几级? 是否有默认的焦点? 默认值是什么?展开的节点图标和颜色? 2.执行操作 1 ...
- 移动端日历选择控件(支持Zepto和JQuery)
移动端日历选择控件(支持Zepto和JQuery) <!DOCTYPE html> <html> <head> <meta charset="utf ...
- MFC TAB控件顺序
在MFC中添加控件后,按Ctrl+d可以改变控件TAB顺序,怕自己忘了,一个神奇的东西,记下. 关于改变Tab顺序的方法有以下几种: 方法一:在动态创建控件的时候STYLE设置成为WS_CHILD|W ...
- 扩展easyUI tab控件,添加加载遮罩效果
项目里要用HighChart显示图表,如果返回的数量量太多,生成图表是一个很耗时的过程.tab控件又没有显示遮罩的设置(至少本菜是没有找到), Google了一下,根据另一个兄台写的方法,拿来改造了一 ...
- NVelocity+Bootstrap tab控件 异常之
异常信息:Encountered "tings" at line 54, column 55.Was expecting one of: "(" ... ...
随机推荐
- jsp 声明类的使用
能够在"<%!"和"%>"之间声明一个类,该类在JSP页面内有效,即在JSP页面的Java程序片部分能够使用该类创建对象.在以下的样例中,我们定义了 ...
- HttpModule、HttpHandler和Page的生命周期
1.引言 2.两个处理步骤 2.1.创建ASP.NET环境 2.2.用触发的MHPM事件处理请求 3.什么事件中应该做什么 4.示例代码 5.深入ASP.NET页面事件 1.引言 这篇文章我们将试图理 ...
- CodeFirst-Section1之小例子
尽可能做到不说一些晦涩难懂的语言,Follow Me...... 环境:Visual Studio 2013+.Net Framework 4.5 1.什么是Code First? 说白了就是先建好C ...
- Oracle表解锁
网搜 --第一步 查看被锁表 select b.owner,b.object_name, b.object_id,l.session_id,l.locked_mode from v$locked_ob ...
- 由命名空间函数而引发思考--js中的对象赋值问题
最近没有编码任务,作为一个才毕业的小辣鸡,给的任务就是看一下公司的新系统,熟悉怎么用哪些地方是干什么的. 下午喝了两杯水,感觉有点浪.然后就开始看了下代码.发现有一个函数是这样子的. var TX = ...
- C++对C语言的非面向对象特性扩充(3)
今天要讲的是C++作用域运算符"::",强制类型转换的扩充,C++中相对于C中malloc和free函数的运算符new和delete,以及C++对C的一个重要扩充:引用(refer ...
- JavaScript基础知识----document对象
对象属性document.title //设置文档标题等价于HTML的<title>标签document.bgColor //设 ...
- CSS3 transform制作的漂亮的滚动式导航
模拟这个做的 不过实现的没有别人那么好 http://www.creativetier.com/products/modern-menu-3/vertical.html 关于transform 看这 ...
- Web APIs 基于令牌TOKEN验证的实现
Web APIs 基于令牌TOKEN验证的实现 概述: ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.但 ...
- CentOS 6.5系统安装配置图解教程(详细图文)
转载:http://www.jb51.net/os/128751.html