/BMTmobile-master/assets/artx-Blue/script.js

https://gitlab.com/webservers/codeigniter_mobile_dev_server · JavaScript · 177 lines · 131 code · 26 blank · 20 comment · 38 complexity · f1c92ee5d24296cca63aa6153dc7dde5 MD5 · raw file

  1. /* begin Page */
  2. /* Created by Artisteer v3.1.0.48375 */
  3. // css helper
  4. (function($) {
  5. var data = [
  6. {str:navigator.userAgent,sub:'Chrome',ver:'Chrome',name:'chrome'},
  7. {str:navigator.vendor,sub:'Apple',ver:'Version',name:'safari'},
  8. {prop:window.opera,ver:'Opera',name:'opera'},
  9. {str:navigator.userAgent,sub:'Firefox',ver:'Firefox',name:'firefox'},
  10. {str:navigator.userAgent,sub:'MSIE',ver:'MSIE',name:'ie'}];
  11. for (var n=0;n<data.length;n++) {
  12. if ((data[n].str && (data[n].str.indexOf(data[n].sub) != -1)) || data[n].prop) {
  13. var v = function(s){var i=s.indexOf(data[n].ver);return (i!=-1)?parseInt(s.substring(i+data[n].ver.length+1)):'';};
  14. $('html').addClass(data[n].name+' '+data[n].name+v(navigator.userAgent) || v(navigator.appVersion)); break;
  15. }
  16. }
  17. })(jQuery);
  18. /* end Page */
  19. /* begin Menu */
  20. jQuery(function () {
  21. if (!jQuery.browser.msie || parseInt(jQuery.browser.version) > 7) return;
  22. jQuery('ul.art-hmenu>li:not(:first-child)').each(function () { jQuery(this).prepend('<span class="art-hmenu-separator"> </span>'); });
  23. if (!jQuery.browser.msie || parseInt(jQuery.browser.version) > 6) return;
  24. jQuery('ul.art-hmenu li').each(function () {
  25. this.j = jQuery(this);
  26. this.UL = this.j.children('ul:first');
  27. if (this.UL.length == 0) return;
  28. this.A = this.j.children('a:first');
  29. this.onmouseenter = function () {
  30. this.j.addClass('art-hmenuhover');
  31. this.UL.addClass('art-hmenuhoverUL');
  32. this.A.addClass('art-hmenuhoverA');
  33. };
  34. this.onmouseleave = function() {
  35. this.j.removeClass('art-hmenuhover');
  36. this.UL.removeClass('art-hmenuhoverUL');
  37. this.A.removeClass('art-hmenuhoverA');
  38. };
  39. });
  40. });
  41. jQuery(function() { setHMenuOpenDirection({container: "div.art-sheet-body", defaultContainer: "#art-main", menuClass: "art-hmenu", leftToRightClass: "art-hmenu-left-to-right", rightToLeftClass: "art-hmenu-right-to-left"}); });
  42. function setHMenuOpenDirection(menuInfo) {
  43. var defaultContainer = jQuery(menuInfo.defaultContainer);
  44. defaultContainer = defaultContainer.length > 0 ? defaultContainer = jQuery(defaultContainer[0]) : null;
  45. jQuery("ul." + menuInfo.menuClass + ">li>ul").each(function () {
  46. var submenu = jQuery(this);
  47. var submenuWidth = submenu.outerWidth();
  48. var submenuLeft = submenu.offset().left;
  49. var mainContainer = submenu.parents(menuInfo.container);
  50. mainContainer = mainContainer.length > 0 ? mainContainer = jQuery(mainContainer[0]) : null;
  51. var container = mainContainer || defaultContainer;
  52. if (container != null) {
  53. var containerLeft = container.offset().left;
  54. var containerWidth = container.outerWidth();
  55. if (submenuLeft + submenuWidth >=
  56. containerLeft + containerWidth)
  57. /* right to left */
  58. submenu.addClass(menuInfo.rightToLeftClass).find("ul").addClass(menuInfo.rightToLeftClass);
  59. if (submenuLeft <= containerLeft)
  60. /* left to right */
  61. submenu.addClass(menuInfo.leftToRightClass).find("ul").addClass(menuInfo.leftToRightClass);
  62. }
  63. });
  64. }
  65. /* end Menu */
  66. /* begin MenuSubItem */
  67. jQuery(function () {
  68. jQuery("ul.art-hmenu ul li").hover(function () { jQuery(this).prev().children("a").addClass("art-hmenu-before-hovered"); },
  69. function () { jQuery(this).prev().children("a").removeClass("art-hmenu-before-hovered"); });
  70. });
  71. jQuery(function () {
  72. if (!jQuery.browser.msie) return;
  73. var ieVersion = parseInt(jQuery.browser.version);
  74. if (ieVersion > 7) return;
  75. /* Fix width of submenu items.
  76. * The width of submenu item calculated incorrectly in IE6-7. IE6 has wider items, IE7 display items like stairs.
  77. */
  78. jQuery.each(jQuery("ul.art-hmenu ul"), function () {
  79. var maxSubitemWidth = 0;
  80. var submenu = jQuery(this);
  81. var subitem = null;
  82. jQuery.each(submenu.children("li").children("a"), function () {
  83. subitem = jQuery(this);
  84. var subitemWidth = subitem.outerWidth();
  85. if (maxSubitemWidth < subitemWidth)
  86. maxSubitemWidth = subitemWidth;
  87. });
  88. if (subitem != null) {
  89. var subitemBorderLeft = parseInt(subitem.css("border-left-width"), 10) || 0;
  90. var subitemBorderRight = parseInt(subitem.css("border-right-width"), 10) || 0;
  91. var subitemPaddingLeft = parseInt(subitem.css("padding-left"), 10) || 0;
  92. var subitemPaddingRight = parseInt(subitem.css("padding-right"), 10) || 0;
  93. maxSubitemWidth -= subitemBorderLeft + subitemBorderRight + subitemPaddingLeft + subitemPaddingRight;
  94. submenu.children("li").children("a").css("width", maxSubitemWidth + "px");
  95. }
  96. });
  97. if (ieVersion > 6) return;
  98. jQuery("ul.art-hmenu ul>li:first-child>a").css("border-top-width", "1px");
  99. });
  100. /* end MenuSubItem */
  101. /* begin Layout */
  102. jQuery(function () {
  103. var c = jQuery('div.art-content');
  104. if (c.length !== 1) return;
  105. var s = c.parent().children('.art-layout-cell:not(.art-content)');
  106. if (jQuery.browser.msie && parseInt(jQuery.browser.version) < 8) {
  107. jQuery(window).bind('resize', function() {
  108. var w = 0;
  109. c.hide();
  110. s.each(function() { w += this.clientWidth; });
  111. c.w = c.parent().width(); c.css('width', c.w - w + 'px');
  112. c.show();
  113. });
  114. }
  115. jQuery(window).trigger('resize');
  116. });/* end Layout */
  117. /* begin VMenu */
  118. jQuery(function() {
  119. if (!jQuery('html').hasClass('ie7')) return;
  120. jQuery('ul.art-vmenu li:not(:first-child),ul.art-vmenu li li li:first-child,ul.art-vmenu>li>ul').each(function () { jQuery(this).append('<div class="art-vmenu-separator"> </div><div class="art-vmenu-separator-bg"> </div>'); });
  121. });
  122. /* end VMenu */
  123. /* begin VMenuItem */
  124. jQuery(function() {
  125. jQuery('ul.art-vmenu a').click(function () {
  126. var a = jQuery(this);
  127. a.parents('ul.art-vmenu').find("ul, a").removeClass('active');
  128. a.parent().children('ul').addClass('active');
  129. a.parents('ul.art-vmenu ul').addClass('active');
  130. a.parents('ul.art-vmenu li').children('a').addClass('active');
  131. });
  132. });
  133. /* end VMenuItem */
  134. /* begin Button */
  135. function artButtonSetup(className) {
  136. jQuery.each(jQuery("a." + className + ", button." + className + ", input." + className), function (i, val) {
  137. var b = jQuery(val);
  138. if (!b.parent().hasClass('art-button-wrapper')) {
  139. if (b.is('input')) b.val(b.val().replace(/^\s*/, '')).css('zoom', '1');
  140. if (!b.hasClass('art-button')) b.addClass('art-button');
  141. jQuery("<span class='art-button-wrapper'><span class='art-button-l'> </span><span class='art-button-r'> </span></span>").insertBefore(b).append(b);
  142. if (b.hasClass('active')) b.parent().addClass('active');
  143. }
  144. b.mouseover(function () { jQuery(this).parent().addClass("hover"); });
  145. b.mouseout(function () { var b = jQuery(this); b.parent().removeClass("hover"); if (!b.hasClass('active')) b.parent().removeClass('active'); });
  146. b.mousedown(function () { var b = jQuery(this); b.parent().removeClass("hover"); if (!b.hasClass('active')) b.parent().addClass('active'); });
  147. b.mouseup(function () { var b = jQuery(this); if (!b.hasClass('active')) b.parent().removeClass('active'); });
  148. });
  149. }
  150. jQuery(function() { artButtonSetup("art-button"); });
  151. /* end Button */