easyui layout 收缩的bug
easyui layout提供collapse方法折叠指定的 panel,'region' 参数可能的值是:'north'、'south'、'east'、'west',但是在 IE6的环境下,调用这个方法的时候,奇怪的事情发生了,里面的内容不见了,变成很大一块空白,这里有一个很戳的解决办法:
$('#cc').layout('collapse','west');
$('#cc').layout(‘expand','west');
$('#cc').layout('collapse','west');
-----------------------------------------------------------------华丽丽的分割线-------------------------------------------------------------------------
数日过后,经高人指点,此bug有了新解决方法:
jquery.easyui.min.js源码第3888行开始:
_2b0.north.panel("panel").animate({ top: -_2b0.north.panel("options").height }, function () {
_2b0.north.panel("close");
_2b0.expandNorth.panel("open").panel("resize", { top: 0, left: 0, width: cc.width(), height: 28 });
_2b0.north.panel("options").onCollapse.call(_2b0.north);
});
将上面的代码移到_2b0.expandNorth这个属性的判断之后:
if (!_2b0.expandNorth) {
_2b0.expandNorth = _2b1("north");
_2b0.expandNorth.panel("panel").click(function () {
_2b0.north.panel("open").panel("resize", { top: -_2b0.north.panel("options").height });
_2b0.north.panel("panel").animate({ top: 0 },0);
return false;
});
}
第一段代码中animate函数是jquery中用来实现动画效果的函数,这个函数的最后一个参数是一个回调方法,在这个回调方法中用到_2b0.expandNorth这个对象,这个东西不知道为什么会是undefine,而且每次一旦是undefine的时候,回调方法报错,然后就会出现上面提到的留白效果。所以上面提到的在ie6下会出现这种情况其实是错的,应该说是在比较差的机器上if (!_2b0.expandNorth) 这段代码会晚于回调方法执行,从而导致脚本报错,出现留白效果。
这个问题当然是我找同事帮忙才发现的,其实要找到解决这个问题并不难,我之所以没能解决首先是对jquery不熟悉,不知道有animate这么一个动画效果的方法。其次是认为人家的框架应该是很健壮的,不可能改的动,说白了就是缺乏自信吧。
又是一个中秋,桂花香气四溢
easyui layout 收缩的bug的更多相关文章
- jQuery easyui layout布局自适应浏览器大小(转)
首先解释一下标题的含义,当我们用jQuery easyui layout 进行布局的时候,可能会遇到这样一个问题,那就是当手工调整浏览器大小,或者最大化.还原窗口的时候,layout的某个区域不能填充 ...
- Easyui layout设置满屏效果
html文件: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" ...
- 布局-EasyUI Panel 面板、EasyUI Tabs 标签页/选项卡、EasyUI Accordion 折叠面板、EasyUI Layout 布局
EasyUI Panel 面板 通过 $.fn.panel.defaults 重写默认的 defaults. 面板(panel)当做其他内容的容器使用.它是创建其他组件(比如:Layout 布局.Ta ...
- easyui layout 折叠之后显示标题
方法一:重载扩展panel收缩事件 (function($){ var buttonDir = {north:'down',south:'up',east:'left',west:'right'}; ...
- EasyUI Layout 添加、删除、折叠、展开布局
<!DOCTYPE html> <html> <head> <title>吹泡泡的魚-主页</title> <link rel=&qu ...
- EasyUI Layout 布局
1.在整个页面上创建布局(Layout) <!DOCTYPE html> <html> <head> <title>吹泡泡的魚-主页</title ...
- cocos js 3.8.1 clippingNode 不能被 ccui.ScrollView 或者ccui.Layout裁剪的bug
clippingNode不能被ccui.ScrollView.ccui.ListView.ccui.Layout裁剪问题,只需要 设置scrollView ...的裁剪类型 scrollView.se ...
- 前端框架easyui layout, Tabs,tree
一.三大前端框架的 1.easyui=jquery+html4(用来做后台的管理界面) 不要钱,开发速度快,不好看,不支持响应式 2.bootstrap=jquery+html5 好看,开发速度快,部 ...
- JQuery EasyUI Tree组件的Bug记录
记录一下使用项目中使用EasyUI遇到的bug,废话少说直接上菜 - _-(bug)..... bug :: .netcore创建一个web应用时候,会自动引入jQuery库以及一些插件,但是在 ...
随机推荐
- EntityManager方法简介
EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...
- mysq错误(1)空用户创建库
mysql5.6.24免安装版: 1.ERROR 1044 (42000): Access denied for user ''@'localhost' to database 现象:创建库失败. 出 ...
- Android_相关路径
1. Android应用安装涉及到如下几个目录:system/app 系统自带的应用程序,无法删除.data/app 用户程序安装的目录,有删除权限.安装时把apk文件复制到此目录.da ...
- [转载] 首席工程师揭秘:LinkedIn大数据后台是如何运作的?(一)
本文作者:Jay Kreps,linkedin公司首席工程师:文章来自于他在linkedin上的分享:原文标题:The Log: What every software engineer should ...
- Mysql 系统参数 系统变量 状态变量
1.系统参数,也就是命令行选项,执行命令的时候,后面跟的参数,系统参数很多,不可能每次执行程序的时候,指定这些参数.这些参数写在配置文件(Windows下是my.ini,Linux是my.cnf),执 ...
- Mysql 允许null 与 default值
分为下面4种情况: 1.允许null, 指定default值. 2.允许null, 不指定default,这个时候可认为default值就是null 3.不允许null,指定default值,不能指定 ...
- 5.2 i++
答案:第一段21,第二段12 PS:注意运算符的优先级. 答案:A
- ios CoreBluetooth 警告 is being dealloc'ed while pending connection
ios CoreBluetooth 警告 is being dealloc'ed while pending connection CoreBluetooth[WARNING] <CBPerip ...
- python2 urllib 笔记
python2 urllib 笔记 import urllib base='http://httpbin.org/' ip=base+'ip' r=urllib.urlopen(ip) print r ...
- VS2012更改项目编译后文件输出目录
1.现在我的解决方案里有存在两个项目,分别是类库项目ClassLibrary1和控制台项目ConsoleApplication1,默认情况下当解决方案重新生成后,这两个项目所对应的编译后文件分别会存在 ...