Jquery tab插件wdScrollTab 在chrome中出现不兼容的问题

来源:互联网 发布:java事务的隔离级别 编辑:程序博客网 时间:2024/06/06 02:05

先贴上jsp里面调用的代码

[javascript] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. var gh ="${teacher.GH }";  
  2.         var grjlurl = _webRootPath + "content/search/teacher/teacher.grjl.jsp?gh="+gh;  
  3.         var jcTabs = [  
  4.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="'+grjlurl+'" id="grjlList" name="grjlList"></iframe>',  
  5.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="" id="kyxmList" name="kyxmList"></iframe>',  
  6.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="" id="xslwList" name="xslwList"></iframe>',  
  7.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="" id="xszzList" name="xszzList"></iframe>',  
  8.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="" id="zscqList" name="zscqList"></iframe>',  
  9.         '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="" id="hjcgList" name="hjcgList"></iframe>',  
  10.         '<iframe width="100%" scrolling="yes" height="100%" frameborder="0" src="" id="xcdyList" name="xcdyList"></iframe>'  
  11.         ];  
  12.         j$(document).ready(function(){  
  13.            var tabpanel2 = new TabPanel({    
  14.                 renderTo:'tab',    
  15.                 width:'99%',    
  16.                 //height:'331',    
  17.                 //border:'none',  
  18.                 active : 0,  
  19.                 //autoResizable : true,  
  20.                 //maxLength : 6,    
  21.                 items : [  
  22.                     {id:'toolbarPlugin1',title:'个人简历', html:jcTabs[0],closable: false},  
  23.                     {id:'toolbarPlugin2',title:'科研项目',html:jcTabs[1],closable: false,  func:'doSearchList(1,"kyxmList","getKyxmList.action")'},  
  24.                     {id:'toolbarPlugin3',title:'学术论文',html:jcTabs[2],closable: false, func:'doSearchList(1,"xslwList","getXslwList.action")'},  
  25.                     {id:'toolbarPlugin4',title:'学术著作',html:jcTabs[3],closable: false, func:'doSearchList(1,"xszzList","getXszzList.action")'},  
  26.                     {id:'toolbarPlugin5',title:'知识产权',html:jcTabs[4],closable: false, func:'doSearchList(1,"zscqList","getZscqList.action")'},  
  27.                     {id:'toolbarPlugin6',title:'获奖成果',html:jcTabs[5],closable: false, func:'doSearchList(1,"hjcgList","getHjcgList.action")'},  
  28.                     {id:'toolbarPlugin7',title:'薪酬待遇',html:jcTabs[6],closable: false, func:'doSearchList(1,"xcdyList","getXcdyList.action")'}  
  29.                 ]  
  30.             });    
  31.         });   

在FF,IE等浏览器里面都显示正常


但是在chrome里面出现奇怪的问题,有时候整个tab的高度只有一行,下面的内容不显示


又或者变成下面这样

查看代码发现,第一种错误是因为在TabPanel.js中,alert(this.render.height())得到是0,感觉很奇怪,我单独写了个html测试,又没有出现这样的问题,但在这里,render的高度取出来就是0.renderTo指向的是<div id="tab"></div>, 后来没办法,我把它改成<div id="tab" style="height:100%"></div> 后就正常了,取出来的height就不是0了。

[javascript] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. this.height = config.height || '100%';  
  2. this.render = typeof this.renderTo == 'string' ? $('#'+this.renderTo) : this.renderTo;  
  3.   
  4. this.render.height(this.height);  
  5.   
  6. this.tabpanel = $('<DIV></DIV>');  
  7. this.tabpanel.addClass('tabpanel');  
  8. this.tabpanel.width(this.render.width()-hwFix);  
  9. this.tabpanel.height(this.render.height()-hwFix);  

第二个错误,我发现是因为,下面的部分被执行了两次。

[javascript] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. j$(document).ready(function(){}  
百思不得其解,后面上网看到有人说jquery的appendTo可能引起这个问题,于是修改代码

[javascript] view plain copy
 在CODE上查看代码片派生到我的代码片
  1.        var loaded = false;  
  2. $(document).ready(function(){  
  3. if(!loaded){  
  4.    loaded = true;  
  5.    var tabpanel2 = new TabPanel({    
  6.         renderTo:'tab',    
  7.         width:'99%',    
  8.         //height:'331',    
  9.         //border:'none',  
  10.         active : 0,  
  11.         //autoResizable : true,  
  12.         //maxLength : 6,    
  13.         items : [  
  14.             {id:'toolbarPlugin1',title:'个人简历', html:jcTabs[0],closable: false},  
  15.             {id:'toolbarPlugin2',title:'科研项目',html:jcTabs[1],closable: false,  func:'doSearchList(1,"kyxmList","getKyxmList.action")'},  
  16.             {id:'toolbarPlugin3',title:'学术论文',html:jcTabs[2],closable: false, func:'doSearchList(1,"xslwList","getXslwList.action")'},  
  17.             {id:'toolbarPlugin4',title:'学术著作',html:jcTabs[3],closable: false, func:'doSearchList(1,"xszzList","getXszzList.action")'},  
  18.             {id:'toolbarPlugin5',title:'知识产权',html:jcTabs[4],closable: false, func:'doSearchList(1,"zscqList","getZscqList.action")'},  
  19.             {id:'toolbarPlugin6',title:'获奖成果',html:jcTabs[5],closable: false, func:'doSearchList(1,"hjcgList","getHjcgList.action")'},  
  20.             {id:'toolbarPlugin7',title:'薪酬待遇',html:jcTabs[6],closable: false, func:'doSearchList(1,"xcdyList","getXcdyList.action")'}  
  21.         ]  
  22.     });    
  23. }  
  24. );  

增加一个标识loaded后,问题终于解决。
0 0
原创粉丝点击