refreshtab.js 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. //1,选项卡文字超长的,截取展示
  2. //2,调整选项卡的位置和左右按钮的显示
  3. function tab() {
  4. $("#tab>.tabs>li").each(function (i) {
  5. var objString = $(this).find("p").text(); //获取当前选项卡名称
  6. var objLength = $(this).find("p").text().length; //获取当前选项卡名称长度
  7. var num = 8; //选项卡名称最大长度
  8. if (objLength > num) {
  9. objString = $(this).find("p").text(objString.substring(0, num - 1) + "..."); //超出部分省略号表示
  10. }
  11. $(this).css("left", i * (136 + 34)); //left值往右递加
  12. $(this).css("z-index", -(i - 40)) //堆叠顺序往右递减
  13. $("#tab>.tabs>.thistab").css("z-index", "101"); //选中选项卡顺序最高
  14. // var imgname = $(this).attr("code"); //定义变量为选项卡name值
  15. $(this).find("div>img").attr("src", $.app+"/static/biz/image/oa.png"); //更改对应小图标地址
  16. // var imgname1=$("#tab>.tabs>.thistab").attr("name"); //定义变量为选中选项卡name值
  17. // $("#tab>.tabs>.thistab").find("div>img").attr("src","images/"+imgname1+"_1.PNG"); //更改选中选项卡对应小图标地址
  18. // if (imgname=="index") { //首页不能关闭
  19. // $(".thistab").find("span").css("display", "none");
  20. // }
  21. //按钮图片切换
  22. var length = $("#tab>.tabs>li").length; //选项卡的数量
  23. var showtab = Math.floor(parseInt($("#tab").width() - 204) / 170 + 1); //当前浏览器可显示的选项卡数量
  24. var tabsleft = parseInt($("#tabs").css("left"))
  25. if (length > showtab) { //判断选项卡是否超出
  26. if (plus < (length - showtab)) { //判断操作步数
  27. $("#buttontab>#tabsnext").css("background", "url('"+$.app+"/static/biz/image/change.png') no-repeat -36px -29px");
  28. }
  29. else {
  30. $("#buttontab>#tabsnext").css("background", "url('"+$.app+"/static/biz/image/change.png') no-repeat -36px 0px");
  31. }
  32. $("#buttontab").css("display","block");
  33. }
  34. else {
  35. $("#buttontab>#tabsnext").css("background", "url('"+$.app+"/static/biz/image/change.png') no-repeat -36px 0px");
  36. $("#buttontab").css("display","none");
  37. }
  38. if (tabsleft >= 15) {
  39. $("#buttontab>#tabsprev").css("background", "url('"+$.app+"/static/biz/image/change.png') no-repeat 0px 0px");
  40. }
  41. else {
  42. $("#buttontab>#tabsprev").css("background", "url('"+$.app+"/static/biz/image/change.png') no-repeat 0px -29px");
  43. }
  44. });
  45. }
  46. //根据选项卡更新内容
  47. function jqtab(tabtit, tab_conbox, shijian) {
  48. //点击选项卡触发事件
  49. $(tabtit).find("li").bind(shijian, function () {
  50. $(this).addClass("thistab").siblings("li").removeClass("thistab"); //当前选项卡添加选中样式,删除其他选项卡选中样式
  51. var activeindex = $(this).attr("code"); //当前选项卡name值赋予变量
  52. // $("#iframepage").attr("src",$.app+activeindex);
  53. $('#'+activeindex).css("display","block");
  54. showOrHide(activeindex);
  55. tab();
  56. });
  57. //点击关闭选项卡触发事件
  58. $(tabtit).find("li>div>span").bind(shijian, function () {
  59. var parentli = $(this).parent().parent();
  60. if(parentli.hasClass("thistab")){ //判断当前选项卡是否选中
  61. if (parentli.next("li").length) { //判断下个选项卡是否存在
  62. parentli.next().trigger(shijian); //执行下个选项卡点击事件
  63. } else {
  64. parentli.prev().trigger(shijian); //执行上个选项卡点击事件
  65. }
  66. }
  67. parentli.remove(); //删除当前选项卡
  68. $('#'+parentli.attr("code")).remove();
  69. var tabsleft = parseInt($("#tabs").css("left"));
  70. if(tabsleft<15){
  71. plus--;
  72. $("#tabs").css("left", tabsleft+170);
  73. };
  74. tab();
  75. });
  76. }
  77. function showOrHide(code){
  78. $(".iframepage:not([id='"+code+"'])").each(function(i){
  79. $(this).css("display","none");
  80. });
  81. }