关于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 相关文章推荐
jQuery lazyload 的重复加载错误以及修复方法
Nov 19 Javascript
jQuery实现表头固定效果的实例代码
May 24 Javascript
基于jquery插件制作左右按钮与标题文字图片切换效果
Nov 07 Javascript
jQuery操作select下拉框的text值和value值的方法
May 31 Javascript
jQuery绑定事件不执行但alert后可以正常执行
Jun 03 Javascript
JS组件Bootstrap Table布局详解
May 27 Javascript
JavaScript获取IP获取的是IPV6 如何校验
Jun 12 Javascript
jQuery webuploader分片上传大文件
Nov 07 Javascript
jQuery多选框选择数量限制方法
Feb 08 Javascript
vue-router 中router-view不能渲染的解决方法
May 23 Javascript
详解vue-cli之webpack3构建全面提速优化
Dec 25 Javascript
Openlayers+EasyUI Tree动态实现图层控制
Sep 28 Javascript
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
海贼王:最美的悬赏令!
2020/03/02 日漫
在PHP中读取和写入WORD文档的代码
2008/04/09 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
php常用经典函数集锦【数组、字符串、栈、队列、排序等】
2019/08/23 PHP
解决Laravel 不能创建 migration 的问题
2019/10/09 PHP
php自动加载代码实例详解
2021/02/26 PHP
jQuery学习笔记之jQuery的DOM操作
2010/12/22 Javascript
JSON语法五大要素图文介绍
2012/12/04 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
2015/04/28 Javascript
Bootstrap精简教程
2015/11/27 Javascript
Javascript技术难点之apply,call与this之间的衔接
2015/12/04 Javascript
Bootstrap3.0学习教程之JS折叠插件
2016/05/27 Javascript
JavaScript省市区三级联动菜单效果
2016/09/21 Javascript
微信小程序之裁剪图片成圆形的实现代码
2018/10/11 Javascript
JavaScript中的事件与异常捕获详析
2019/02/24 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
小程序api实现promise封装过程解析
2019/11/21 Javascript
使用Vue-scroller页面input框不能触发滑动的问题及解决方法
2020/08/08 Javascript
python 字典(dict)遍历的四种方法性能测试报告
2014/06/25 Python
利用Python循环(包括while&amp;for)各种打印九九乘法表的实例
2017/11/06 Python
Python中super函数的用法
2017/11/17 Python
Python 函数list&amp;read&amp;seek详解
2019/08/28 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
python计算二维矩形IOU实例
2020/01/18 Python
python 发送邮件的示例代码(Python2/3都可以直接使用)
2020/12/03 Python
添柏岚英国官方网站:Timberland英国
2019/11/28 全球购物
国际贸易个人求职信范文
2014/01/04 职场文书
前台文员我鉴定
2014/01/12 职场文书
决心书范文
2014/03/11 职场文书
酒店仓管员岗位职责
2014/04/28 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
天坛导游词
2015/02/02 职场文书
追讨欠款律师函
2015/06/24 职场文书
工作简历的自我评价
2019/05/16 职场文书
Java8中接口的新特性使用指南
2021/11/01 Java/Android