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.
No edit summary
mNo edit summary
Line 1: Line 1:
importScript('MediaWiki:GetElementsByClassName.js');
importScript('MediaWiki:GetElementsByClassName.js');


var getChildrenByTagName = function(parent, name) {
function getChildrenByTagName(parent, name) {
  var nodeList = [];
  var nodeList = [];
  for (var child = parent.firstChild; child != null; child = child.nextSibling) {
  for (var child = parent.firstChild; child != null; child = child.nextSibling) {
Line 7: Line 7:
  }
  }
  return nodeList;
  return nodeList;
};
}





Revision as of 20:27, 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");
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]);
	}
}