/********************************* tabs.js for EA.com js code for EA.com redesign prototype code by Byron Tredwell (byron(AT)blastradius.com) *********************************/ function tabSet(tabSetId,selectedIndex,func,toggleOnSingleTab) { var tabSet = getElm(tabSetId); if(!tabSet) return; this.tabs = tabSet.getElementsByTagName("DIV"); this.baseClass = this.tabs[0].className; this.currentTab = null; this.func = func; this.toggleOnSingleTab = toggleOnSingleTab; var tempArray = new Array(); for(var i=0; i boo no work in safari if(this.tabs[i].id && this.tabs[i].className.indexOf("tab") >=0 ) { tempArray[tempArray.length] = this.tabs[i]; } } this.tabs = tempArray; for(tab in this.tabs) { this.tabs[tab].onclick = this.toggle; this.tabs[tab].tabSet = this; this.tabs[tab].pane = document.getElementById(this.tabs[tab].id.substring(0,this.tabs[tab].id.indexOf("Tab"))); } if(!selectedIndex) selectedIndex = 0; this.setActiveTab(this.tabs[selectedIndex]); return this; } tabSet.prototype.toggle = function() { this.tabSet.setActiveTab(this); } tabSet.prototype.setActiveTab = function(tabRef) { if(this.toggleOnSingleTab && tabRef == this.currentTab) { if(this.currentTab.pane.style.display == "block") { this.currentTab.pane.style.display = "none"; }else{ this.currentTab.pane.style.display = "block"; } }else{ this.currentTab = null; for(tab in this.tabs) { if(this.tabs[tab] == tabRef) { this.currentTab = this.tabs[tab]; this.currentTab.className = this.baseClass +" On"; if(this.tabs[tab].pane) this.tabs[tab].pane.style.display = "block"; }else{ this.tabs[tab].className = this.baseClass; if(this.tabs[tab].pane) this.tabs[tab].pane.style.display = "none"; } } } if(typeof this.func == "function") this.func(this.currentTab); }