function switchNext2(el,tname,first) {
	var selcn="selected";
	var parent=el.parentNode;
	var tags=parent.getElementsByTagName(tname);
	var next=el.nextSibling;
	var last=parent.lastChild;
	while(last.nodeType != 1) last = last.previousSibling;
	while(next.nodeType != 1) next = next.nextSibling;
	next.style.display="none";
	if (first!=1){
		for (i=0; i<tags.length; i++) {
			var tohide=tags[i].nextSibling;
			while(tohide.nodeType != 1) tohide = tohide.nextSibling;
			if (tohide!=next){tohide.style.display="none";}
			tags[i].className=tags[i].className.replace(new RegExp(selcn+"\\b"), "");
			if (tags[i]==el){
				var rEx = new RegExp("(^|\\s)" + selcn + "(\\s|$)");
				if (rEx.test(tags[i].className)==false) {tags[i].className+=" "+selcn;}
			}
		}	
		var clone=next.cloneNode(true);
		clone.style.display="block";
		parent.removeChild(last);
		parent.appendChild(clone);
	}
	else {
		var firstone=tags[0].nextSibling;
		while(firstone.nodeType != 1) firstone = firstone.nextSibling;
		var clone=firstone.cloneNode(true);
		clone.style.display="block";
		if (last.innerHTML!=clone.innerHTML){parent.appendChild(clone);}
		var rEx = new RegExp("(^|\\s)" + selcn + "(\\s|$)");
		if (rEx.test(tags[0].className)==false) {tags[0].className+=" "+selcn;}
	}
}

function switchNextByIdAndTag2(el,tname) {
	var ccn="clicker";
	clickers=document.getElementById(el).getElementsByTagName(tname);
	for (i=0; i<clickers.length; i++) {
		clickers[i].className+=" "+ccn;
		clickers[i].onclick=function() {switchNext2(this,tname)}
		switchNext2(clickers[i],tname,1);
	}
}

window.onload=function(){switchNextByIdAndTag2('dlist','H5')}
 
