/*
* tabmenu Tabbed Menu Script
* version 1.0.2
* info @ http://zenverse.net/tabmenu-tabbed-menu/
* by Zen @ http://zenverse.net/
* License : GPL
* Free for any purpose
*/
//animation style for tabmenu (fade, slide or none)
var tabmenu_animation_style = 'none';
//animation speed for tabmenu (fast, normal, slow or time in milliseconds) - only for fade and slide
//if you are using time milliseconds, don't include the single quote
var tabmenu_animation_speed = 'fast';
(function($tabmenu) { // Avoid conflicts with other libraries
$tabmenu(document).ready(function() {
var nth_tabmenu = 0;
var tabmenu_firsttab = [];
if (!tabmenu_animation_speed) {
tabmenu_animation_speed = 'fast';
}
$tabmenu('.tabmenu').each( function() {
var gettabtitle = [],gettabcontent = [];
tabmenu_firsttab[nth_tabmenu] = 0;
var loop = 0;
$tabmenu(this).find('.tab').each( function () {
if ($tabmenu(this).hasClass('firsttab')) {
tabmenu_firsttab[nth_tabmenu] = loop;
}
loop++;
});
$tabmenu(this).find('.tab').find('.tabtitle').each( function () {
gettabtitle.push($tabmenu(this).html());
});
$tabmenu(this).find('.tab').find('.tabcontent').each( function () {
gettabcontent.push($tabmenu(this).html());
});
if (gettabtitle.length > 0) {
var htmlcodes = '
';
for (var i2=0;i2'+gettabcontent[i2]+'
';
}
htmlcodes += '';
$tabmenu(this).removeClass('tabmenu').addClass('tabmenu_live').attr('id','tabmenu_id_'+nth_tabmenu).html(htmlcodes);
$tabmenu(this).find('.tabcontent').not(':eq('+tabmenu_firsttab[nth_tabmenu]+')').hide();
$tabmenu(this).find('.tabmenu_ul li a').eq(tabmenu_firsttab[nth_tabmenu]).addClass('current');
}
nth_tabmenu++;
});
$tabmenu('.tabmenu_live').find('.tabmenu_ul > li > a').click( function(event) {
var currzentab = $tabmenu(this).parent('li').parent('ul').parent('.tabmenu_live');
var currid = currzentab.attr('id').replace('tabmenu_id_','');
var currnth = $tabmenu(this).attr('class').replace('t','');
var childnum = parseInt(currnth);
if (tabmenu_firsttab[currid] == childnum) { event.preventDefault(); return false; }
currzentab.find('.tabmenu_ul li a').removeClass('current');
if (currzentab.find('.tabcontent').is(':animated')) {
//something is animating
currzentab.find('.tabcontent').is(':animated').stop(true,true);
}
//tabmenu_animation_speed = 'fast';
switch (tabmenu_animation_style) {
case 'fade':
currzentab.find('.tabcontent:eq('+tabmenu_firsttab[currid]+')').fadeOut(tabmenu_animation_speed, function() {
currzentab.find('.tabcontent:eq('+childnum+')').fadeIn(tabmenu_animation_speed);
currzentab.find('.tabmenu_ul li').eq(childnum).children('a').addClass('current');
});
break;
case 'none':
currzentab.find('.tabcontent:eq('+tabmenu_firsttab[currid]+')').hide(10, function() {
currzentab.find('.tabcontent:eq('+childnum+')').show();
currzentab.find('.tabmenu_ul li').eq(childnum).children('a').addClass('current');
});
break;
default:
currzentab.find('.tabcontent:eq('+tabmenu_firsttab[currid]+')').slideUp(tabmenu_animation_speed, function() {
currzentab.find('.tabcontent:eq('+childnum+')').slideDown(tabmenu_animation_speed);
currzentab.find('.tabmenu_ul li').eq(childnum).children('a').addClass('current');
});
break;
}
tabmenu_firsttab[currid] = childnum;
event.preventDefault(); //return false;
});
});
})(jQuery); // Avoid conflicts with other libraries