User:Locke/common.js: Difference between revisions

From Zelda Dungeon Wiki
Jump to navigation Jump to search
Want an adless experience? Log in or Create an account.
mNo edit summary
mNo edit summary
Line 14: Line 14:
var destinations = getElementsByClassName("tab");
var destinations = getElementsByClassName("tab");
var tabcontents = getElementsByClassName("tabcontent");
var tabcontents = getElementsByClassName("tabcontent");
alert(tabcontents.length);
for( var i = 0; i < tabcontents.length; ++i ) {
for( var i = 0; i < tabcontents.length; ++i ) {
var tabs = getChildrenByTagName(tabcontents[i], "UL");
var tabs = getChildrenByTagName(tabcontents[i], "UL");

Revision as of 20:30, January 2, 2013

importScript('MediaWiki:GetElementsByClassName.js');

function getChildrenByTagName(parent, name) {
 var nodeList = [];
 for (var child = parent.firstChild; child != null; child = child.nextSibling) {
  if (child.nodeType == 1 && name == child.nodeName) { nodeList.push(child); }
 }
 return nodeList;
}


/* Move tabs from the tabcontent section to the tab section */
/* This assumes that every tabcontent div is paired with one tab div. */
var destinations = getElementsByClassName("tab");
var tabcontents = getElementsByClassName("tabcontent");
alert(tabcontents.length);
for( var i = 0; i < tabcontents.length; ++i ) {
	var tabs = getChildrenByTagName(tabcontents[i], "UL");
	for( var j = 0; j < tabs.length; ++j ) {
		/* Move from tabcontents ul to tab ul */
		destinations[i].firstChild.appendChild(tabs[j].firstChild);
		/* Remove the now empty tabcontents ul */
		tabcontents[i].removeChild(tabs[j]);
	}
}