No Description

contabs.min.js 8.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. function f(l) {
  2. var k = 0;
  3. $(l).each(function() {
  4. k += $(this).outerWidth(true)
  5. });
  6. return k
  7. }
  8. function g(n) {
  9. var o = f($(n).prevAll()),
  10. q = f($(n).nextAll());
  11. var l = f($(".content-tabs").children().not(".J_menuTabs"));
  12. var k = $(".content-tabs").outerWidth(true) - l;
  13. var p = 0;
  14. if($(".page-tabs-content").outerWidth() < k) {
  15. p = 0
  16. } else {
  17. if(q <= (k - $(n).outerWidth(true) - $(n).next().outerWidth(true))) {
  18. if((k - $(n).next().outerWidth(true)) > q) {
  19. p = o;
  20. var m = n;
  21. while((p - $(m).outerWidth()) > ($(".page-tabs-content").outerWidth() - k)) {
  22. p -= $(m).prev().outerWidth();
  23. m = $(m).prev()
  24. }
  25. }
  26. } else {
  27. if(o > (k - $(n).outerWidth(true) - $(n).prev().outerWidth(true))) {
  28. p = o - $(n).prev().outerWidth(true)
  29. }
  30. }
  31. }
  32. $(".page-tabs-content").animate({
  33. marginLeft: 0 - p + "px"
  34. },
  35. "fast")
  36. }
  37. function a() {
  38. var o = Math.abs(parseInt($(".page-tabs-content").css("margin-left")));
  39. var l = f($(".content-tabs").children().not(".J_menuTabs"));
  40. var k = $(".content-tabs").outerWidth(true) - l;
  41. var p = 0;
  42. if($(".page-tabs-content").width() < k) {
  43. return false
  44. } else {
  45. var m = $(".J_menuTab:first");
  46. var n = 0;
  47. while((n + $(m).outerWidth(true)) <= o) {
  48. n += $(m).outerWidth(true);
  49. m = $(m).next()
  50. }
  51. n = 0;
  52. if(f($(m).prevAll()) > k) {
  53. while((n + $(m).outerWidth(true)) < (k) && m.length > 0) {
  54. n += $(m).outerWidth(true);
  55. m = $(m).prev()
  56. }
  57. p = f($(m).prevAll())
  58. }
  59. }
  60. $(".page-tabs-content").animate({
  61. marginLeft: 0 - p + "px"
  62. },
  63. "fast")
  64. }
  65. function b() {
  66. var o = Math.abs(parseInt($(".page-tabs-content").css("margin-left")));
  67. var l = f($(".content-tabs").children().not(".J_menuTabs"));
  68. var k = $(".content-tabs").outerWidth(true) - l;
  69. var p = 0;
  70. if($(".page-tabs-content").width() < k) {
  71. return false
  72. } else {
  73. var m = $(".J_menuTab:first");
  74. var n = 0;
  75. while((n + $(m).outerWidth(true)) <= o) {
  76. n += $(m).outerWidth(true);
  77. m = $(m).next()
  78. }
  79. n = 0;
  80. while((n + $(m).outerWidth(true)) < (k) && m.length > 0) {
  81. n += $(m).outerWidth(true);
  82. m = $(m).next()
  83. }
  84. p = f($(m).prevAll());
  85. if(p > 0) {
  86. $(".page-tabs-content").animate({
  87. marginLeft: 0 - p + "px"
  88. },
  89. "fast")
  90. }
  91. }
  92. }
  93. $(".J_menuItem").each(function(k) {
  94. if(!$(this).attr("data-index")) {
  95. $(this).attr("data-index", k)
  96. }
  97. });
  98. function c() {
  99. var o = $(this).attr("href"),
  100. m = $(this).data("index"),
  101. l = $.trim($(this).text()),
  102. k = true;
  103. if(o == undefined || $.trim(o).length == 0) {
  104. return false
  105. }
  106. //$(".J_menuTab").each(function () {
  107. // if ($(this).data("id") == o) {
  108. // if (!$(this).hasClass("active")) {
  109. // $(this).addClass("active").siblings(".J_menuTab").removeClass("active");
  110. // g(this);
  111. // $(".J_mainContent .J_iframe").each(function () {
  112. // if ($(this).data("id") == o) {
  113. // $(this).show().siblings(".J_iframe").hide();
  114. // return false
  115. // }
  116. // })
  117. // }
  118. // k = false;
  119. // return false
  120. // }
  121. //});
  122. //if (k) {
  123. // var p = '<a href="javascript:;" class="active J_menuTab" data-id="' + o + '">' + l + ' <i class="fa fa-times-circle"></i></a>';
  124. // $(".J_menuTab").removeClass("active");
  125. // var n = '<iframe class="J_iframe" name="iframe' + m + '" width="100%" height="100%" src="' + o + '" frameborder="0" data-id="' + o + '" seamless></iframe>';
  126. // $(".J_mainContent").find("iframe.J_iframe").hide().parents(".J_mainContent").append(n);
  127. // $(".J_menuTabs .page-tabs-content").append(p);
  128. // g($(".J_menuTab.active"))
  129. //}
  130. $(".J_mainContent").empty();
  131. var p = '<a href="javascript:;" class="active J_menuTab" data-id="' + o + '">' + l + ' <i class="fa fa-times-circle"></i></a>';
  132. $(".J_menuTab").removeClass("active");
  133. var n = '<iframe class="J_iframe" name="iframe' + m + '" width="100%" height="100%" src="' + o + '" frameborder="0" data-id="' + o + '" seamless></iframe>';
  134. $(".J_mainContent").append(n);
  135. $(".J_menuTabs .page-tabs-content").append(p);
  136. g($(".J_menuTab.active"))
  137. return false
  138. }
  139. function h() {
  140. var m = $(this).parents(".J_menuTab").data("id");
  141. var l = $(this).parents(".J_menuTab").width();
  142. if($(this).parents(".J_menuTab").hasClass("active")) {
  143. if($(this).parents(".J_menuTab").next(".J_menuTab").size()) {
  144. var k = $(this).parents(".J_menuTab").next(".J_menuTab:eq(0)").data("id");
  145. $(this).parents(".J_menuTab").next(".J_menuTab:eq(0)").addClass("active");
  146. $(".J_mainContent .J_iframe").each(function() {
  147. if($(this).data("id") == k) {
  148. $(this).show().siblings(".J_iframe").hide();
  149. return false
  150. }
  151. });
  152. var n = parseInt($(".page-tabs-content").css("margin-left"));
  153. if(n < 0) {
  154. $(".page-tabs-content").animate({
  155. marginLeft: (n + l) + "px"
  156. },
  157. "fast")
  158. }
  159. $(this).parents(".J_menuTab").remove();
  160. $(".J_mainContent .J_iframe").each(function() {
  161. if($(this).data("id") == m) {
  162. $(this).remove();
  163. return false
  164. }
  165. })
  166. }
  167. if($(this).parents(".J_menuTab").prev(".J_menuTab").size()) {
  168. var k = $(this).parents(".J_menuTab").prev(".J_menuTab:last").data("id");
  169. $(this).parents(".J_menuTab").prev(".J_menuTab:last").addClass("active");
  170. $(".J_mainContent .J_iframe").each(function() {
  171. if($(this).data("id") == k) {
  172. $(this).show().siblings(".J_iframe").hide();
  173. return false
  174. }
  175. });
  176. $(this).parents(".J_menuTab").remove();
  177. $(".J_mainContent .J_iframe").each(function() {
  178. if($(this).data("id") == m) {
  179. $(this).remove();
  180. return false
  181. }
  182. })
  183. }
  184. } else {
  185. $(this).parents(".J_menuTab").remove();
  186. $(".J_mainContent .J_iframe").each(function() {
  187. if($(this).data("id") == m) {
  188. $(this).remove();
  189. return false
  190. }
  191. });
  192. g($(".J_menuTab.active"))
  193. }
  194. return false
  195. }
  196. $(".J_menuTabs").on("click", ".J_menuTab i", h);
  197. function i() {
  198. $(".page-tabs-content").children("[data-id]").not(":first").not(".active").each(function() {
  199. $('.J_iframe[data-id="' + $(this).data("id") + '"]').remove();
  200. $(this).remove()
  201. });
  202. $(".page-tabs-content").css("margin-left", "0")
  203. }
  204. $(".J_tabCloseOther").on("click", i);
  205. function j() {
  206. g($(".J_menuTab.active"))
  207. }
  208. $(".J_tabShowActive").on("click", j);
  209. function e() {
  210. if(!$(this).hasClass("active")) {
  211. var k = $(this).data("id");
  212. $(".J_mainContent .J_iframe").each(function() {
  213. if($(this).data("id") == k) {
  214. $(this).show().siblings(".J_iframe").hide();
  215. return false
  216. }
  217. });
  218. $(this).addClass("active").siblings(".J_menuTab").removeClass("active");
  219. g(this)
  220. }
  221. }
  222. $(".J_menuTabs").on("click", ".J_menuTab", e);
  223. function d() {
  224. var l = $('.J_iframe[data-id="' + $(this).data("id") + '"]');
  225. var k = l.attr("src")
  226. }
  227. $(".J_menuTabs").on("dblclick", ".J_menuTab", d);
  228. $(".J_tabLeft").on("click", a);
  229. $(".J_tabRight").on("click", b);
  230. $(".J_tabCloseAll").on("click",
  231. function() {
  232. $(".page-tabs-content").children("[data-id]").not(":first").each(function() {
  233. $('.J_iframe[data-id="' + $(this).data("id") + '"]').remove();
  234. $(this).remove()
  235. });
  236. $(".page-tabs-content").children("[data-id]:first").each(function() {
  237. $('.J_iframe[data-id="' + $(this).data("id") + '"]').show();
  238. $(this).addClass("active")
  239. });
  240. $(".page-tabs-content").css("margin-left", "0")
  241. })