- 注册时间
- 2012-10-29
- 最后登录
- 2018-4-2
- 阅读权限
- 10
- 积分
- 235
- 精华
- 0
- 帖子
- 47
 
|
默认情况下,tab如果使用url属性, 就会默认生成一个iframe. 如果tabs数量很多,就会占用比较多的资源, 最主要的一点是:每个iframe都需要加载一次miniui.js. 这个加载是比较耗时的.如果页面中大量使用了tab元素, 加载这么多次miniui.js,完全没有必要.用如下的方法可以避免生成iframe, 大大提升tab的响应速度.
- <div id="mainTabs" class="mini-tabs" activeIndex="0" style="width:100%;height:100%" bodyStyle="border:0;" maskOnLoad="false" onactivechanged="onMainTabChange">
- <div name="/MainPage/unassignedAlerts" tooltip="未分配通知(Unassigned Alerts)" title="未分配通知" ></div>
- <div name="/MainPage/taskDefinition" tooltip="任务定义批准(Task Definitions to Approve)" title="任务定义批准" ></div>
- <div name="/MainPage/assemblyList" tooltip="组件列表(Assembly List)" title="组件列表" ></div>
- <div name="/MainPage/oilConsumptionStatus" tooltip="滑油消耗(Oil Consumption)" title="滑油消耗" ></div>
- <div name="/MainPage/taskLaborSummary" tooltip="机队工卡工时概要(Task Labor Summary)" title="机队工卡工时概要" ></div>
- <div name="/MainPage/supportingRequired_Tasks" tooltip="支援需求(Supporting Required - Tasks)" title="支援需求" ></div>
- <div name="/MainPage/faultEvaluation" tooltip="故障评估(Fault Evaluation)" title="故障评估" ></div>
- <div name="/MainPage/unassignedAlerts" tooltip="未分配通知(Unassigned Alerts)" title="未分配通知" ></div>
- <div name="/MainPage/claims" tooltip="索赔(Claims)" title="索赔" ></div>
- <div name="/MainPage/workPackagesList" tooltip="工包列表(Work Packages List)" title="工包列表" ></div>
- <div name="/MainPage/fleetDueList" tooltip="机队任务清单(Fleet Due List)" title="机队任务清单" ></div>
- <div name="/MainPage/fleetList" tooltip="机队清单(Fleet List)" title="机队清单" ></div>
- <div name="/MainPage/taskLaborSummary" tooltip="机队工卡工时概要(Task Labor Summary)" title="机队工卡工时概要" ></div>
- <div name="/MainPage/looseInventoryDue" tooltip="离翼物品任务期限(Loose Inventory Due)" title="离翼物品任务期限" ></div>
- <div name="/MainPage/planningViewer" tooltip="计划图(Planning Viewer)" title="计划图" ></div>
- <div name="/MainPage/unassignedAlerts" tooltip="未分配通知(Unassigned Alerts)" title="未分配通知" ></div>
- <div name="/MainPage/claims" tooltip="索赔(Claims)" title="索赔" ></div>
- <div name="/MainPage/workPackagesList" tooltip="工包列表(Work Packages List)" title="工包列表" ></div>
- <div name="/MainPage/fleetDueList" tooltip="机队任务清单(Fleet Due List)" title="机队任务清单" ></div>
- <div name="/MainPage/fleetList" tooltip="机队清单(Fleet List)" title="机队清单" ></div>
- </div>
复制代码- function onMainTabChange(e){
- var tabs = mini.get("mainTabs");
- var tab=tabs.getActiveTab();
- var el= tabs.getTabBodyEl(tab);
-
- $.ajax({
- url:e.tab.name, //name is url
- success:function(data){
- el.innerHTML=data;
- mini.parse();
- }
- });
-
- }
复制代码 要点:
1. <div class="mini-tabs">增加一个onactivechanged事件处理过程.
2. <div> tab不要使用url属性(使用了就会生成iframe), 将url信息写到name属性中.
3. onactivechanged事件过程中,根据name属性包含的url信息, 执行ajax请求.
4. 请求返回的内容填入tab的body中, 然后执行一次mini.parse().
|
|