关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法


Posted in Javascript onMarch 02, 2017

书写jQuery EasyUI Tab 样例时,如果刷新前面的Tab 选项卡,某一个Tab 选项卡里面的页面布局变乱。如下面图片所示:

刚开始打开时页面布局正确:

关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法 

此时我们在第二个选项卡里面,点击第一个页面的刷新按钮,一直刷新,然后切换回来再看看页面,如下图:

关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法 

但是首页选项卡的页面是正常的。

关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法 

为了便于解释说明,这里用第一个选项卡代表 “首页”,第二个选项卡代表”子菜单10”

出现这种情况的问题根本原因在于,你在第二个选项卡里面,点击其它第一个选项卡刷新按钮时,其实刷新的时第二个选项页面内容,当你鼠标离开你第一个选项卡刷新按钮时 ,此时才选中了第一个选项卡,而这时候第二个选项卡还没有渲染完毕,才导致出现这样的情况。验证过程,这是使用的是验证选项卡的title.

打开两个选项卡,一个”首页”,一个”子菜单10”选项卡,切换到”子菜单10”选项卡,然后点击”首页”选项卡的刷新按钮,弹出的结果如下的图,可见在鼠标点击的过程中,tab 里面选中的还是”子菜单10”选项卡,并不是我们看到的”首页”选项卡。

关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法

出现上图问题的错误代码如下:

/* title表示tab选项卡的标题 */
function refeshCurrentTab() {
      var tabPanel = $('#tabContainer');//存放tab选项卡的容器
      var tab = tabPanel.tabs('getSelected');
      //alert("tab选项卡选中按钮的title:"+tab.panel('options').title);      
      var url = $(tab.panel('options').content).attr('src');
      tabPanel.tabs('update', {
        tab: tab,
        options: {
          content: createFrame(url) //创建Frame标签
        }
      });
    };
   function createFrame(url) {
      return '<iframe src="' + url + '" frameborder="0" style="height:100%;width:100%;"></iframe>';
    };

找到问题的根本所在,那么在上述方法中,只需要刷新时传入刷新按钮那个tab选项卡的标题,选中这个,然后再进行刷新操作。修改的代码如下:

/* title表示tab选项卡的标题 */
    function refeshCurrentTab(title) {
      var tabPanel = $('#tabContainer');
      var tab = tabPanel.tabs('getSelected');
      //alert("传入的参数title:"+title+",tab选项卡选中按钮的title:"+tab.panel('options').title);      
      var refeshTab = tabPanel.tabs("getTab", title);
      if (tab != refeshTab) {
        tabPanel.tabs("select", title);
        tab = refeshTab;
      }
      var url = $(tab.panel('options').content).attr('src');
      tabPanel.tabs('update', {
        tab: tab,
        options: {
          content: createFrame(url)
        }
      });
    };
   function createFrame(url) {
      return '<iframe src="' + url + '" frameborder="0" style="height:100%;width:100%;"></iframe>';
    };

以上所述是小编给大家介绍的关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
火狐4、谷歌12不支持Jquery Validator的解决方法分享
Jun 20 Javascript
javascript中String对象的slice()方法分析
Dec 20 Javascript
JavaScript改变CSS样式的方法汇总
May 07 Javascript
不依赖Flash和任何JS库实现文本复制与剪切附源码下载
Oct 09 Javascript
探究Javascript模板引擎mustache.js使用方法
Jan 26 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
Sep 19 Javascript
基于jQuery实现一个marquee无缝滚动的插件
Mar 09 Javascript
移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)
Aug 29 Javascript
node+express框架中连接使用mysql(经验总结)
Nov 10 Javascript
JQueryDOM之样式操作
Mar 27 jQuery
vue data引入本地图片的两种方式小结
Nov 13 Javascript
jQuery实现简单QQ聊天框
Aug 27 jQuery
JavaScript html5利用FileReader实现上传功能
Mar 27 #Javascript
利用ES6语法重构React组件详解
Mar 02 #Javascript
深入理解在JS中通过四种设置事件处理程序的方法
Mar 02 #Javascript
JavaScript表单验证完美代码
Mar 02 #Javascript
js实现常见的工具条效果
Mar 02 #Javascript
详谈jQuery unbind 删除绑定事件 / 移除标签方法
Mar 02 #Javascript
jQuery给表格添加分页效果
Mar 02 #Javascript
You might like
DC动漫人物排行
2020/03/03 欧美动漫
2019十大人气国漫
2020/03/13 国漫
PHP准确取得服务器IP地址的方法
2015/06/02 PHP
修复ShopNC使用QQ 互联时提示100010 错误
2015/11/08 PHP
php将一维数组转换为每3个连续值组成的二维数组
2016/05/06 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
PHP随机生成中文段落示例【测试网站内容时使用】
2020/04/26 PHP
js parseInt(&quot;08&quot;)未指定进位制问题
2010/06/19 Javascript
jQuery学习总结之jQuery事件
2014/06/30 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
2014/09/24 Javascript
jQuery检测返回值的数据类型
2015/07/13 Javascript
全面解析bootstrap格子布局
2016/05/22 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
AngularJS之ionic 框架下实现 Localstorage本地存储
2017/04/22 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
举例讲解Python中的迭代器、生成器与列表解析用法
2016/03/20 Python
python密码错误三次锁定(实例讲解)
2017/11/14 Python
python中使用psutil查看内存占用的情况
2018/06/11 Python
Python实现的从右到左字符串替换方法示例
2018/07/06 Python
python 返回一个列表中第二大的数方法
2019/07/09 Python
Python使用random模块生成随机数操作实例详解
2019/09/17 Python
Django通用类视图实现忘记密码重置密码功能示例
2019/12/17 Python
Python实现的北京积分落户数据分析示例
2020/03/27 Python
澳大利亚的奢侈品牌:Oroton
2016/08/26 全球购物
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
英国最大的自有市场,比亚马逊便宜:Flubit
2019/03/19 全球购物
BannerBuzz加拿大:在线定制横幅印刷、广告和标志
2020/03/10 全球购物
工业自动化毕业生自荐信范文
2014/01/04 职场文书
结婚典礼证婚词
2014/01/11 职场文书
八一慰问活动方案
2014/02/07 职场文书
我的中国梦演讲稿高中篇
2014/08/19 职场文书
2015年中秋节演讲稿
2015/03/20 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
导游词之南迦巴瓦峰
2019/11/19 职场文书
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB
python playwright 自动等待和断言详解
2021/11/27 Python