Grüße,
danke - ich habe mich glaube in der "revealing pattern" version versucht - ich frage mich aber, ob das so ok ist - einfach nur den DOMelementen eigenschaften anzuhängen?
// (targetElement class, tablist class))
function tabSet(c,RC){
this.tabs=document.getElementsByClassName(c);
this.targetClass=c;
this.reiterClass=RC;
//für jeden tab eine menupunkt
var tabList=document.createElement("ul"),li;
//das verstecken der tabs un schalten der classen von reitern sit eine funktion des listenElements
tabList.hideTabs=function(){
var n, t;
for(n in this.childNodes){
t=this.childNodes[n];
if(t.connectedTab){
if(t.classList.contains("active")){
t.classList.remove("active");
}
t.connectedTab.style.display="none";
}
}
}
//durch alle tabs gehen - zugehöriges element ist eigenschaft des listenelements "connectedTab"
for(i=0;i<this.tabs.length;i++){
li=html.li(this.tabs[i].dataset["title"]);
li.connectedTab=this.tabs[i];
li.addEventListener("click",function(e){
this.parentNode.hideTabs();
this.connectedTab.style.display="block";
if(!this.classList.contains("active")){
this.classList.add("active");
}
},false);
tabList.appendChild(li);
}
//liste einfügen
tabList.classList.add(this.reiterClass);
this.tabs[0].parentNode.insertBefore(tabList, this.tabs[0].parentNode.firstChild);
tabList.hideTabs();
//erstes tab aktivieren, simulieren klick auf 1en reiter
tabList.firstChild.click();
}
MFG
bleicher