MediaWiki:Common.js

From Discovery Wiki
Revision as of 23:10, 12 July 2009 by Blodo (talk | contribs)
Jump to navigationJump to search

Note: After saving, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
/* Any JavaScript here will be loaded for all users on every page load. */

/* Event attach functions. Use DW_hookToElement to hook functions to browser
events for certain elements. */
function DW_eventAttach (obj, event, handler) {
	if (obj.addEventListener) {
		obj.addEventListener(event, handler, false);
	} else if (obj.attachEvent) {
		var r = obj.attachEvent('on' + event, handler);
	} else {
		obj['on' + event] = handler;
	}
}

function DW_hookToElement (el, n, ev, func) {
	var el_list = document.getElementsByTagName(el);
	var el_cur;
	for (var i = 0, l = el_list.length; i < l; i++){ 
		el_cur = el_list[i];
		if (el_cur.name && el_cur.name == n) {
			DW_eventAttach(el_cur, ev, func);
		}
	}
}

/* Function for Template:SpoilerBox */
function DW_toggleVisibility (obj) {
	var container = obj.parentNode.parentNode.getElementsByTagName('div').item(0);
	if (!container.style.display || container.style.display == 'block') {
		container.style.display = 'none';
		obj.innerHTML = 'Show';
	} else {
		container.style.display = 'block';
		obj.innerHTML = 'Hide';
	}
}
addOnloadHook(function () { DW_hookToElement('span', 'dwspoiler', 'click', function () { DW_toggleVisibility(this); }); });