MediaWiki:Vector.js: Różnice pomiędzy wersjami

Z High School DxD Wiki
Skocz do:nawigacji, wyszukiwania
Linia 5: Linia 5:
 
}
 
}
 
});
 
});
 +
 +
 +
 +
/* Sidebar */
 +
// Para editar los elementos del sidebar, cambiar [[MediaWiki:Monobook.js/Sidebar.js]]
 +
window.wgSidebar = (window.wgSidebar||{});
 +
importScript('MediaWiki:Monobook.js/Sidebar.js');
 +
 +
/*
 +
* MonobookSidebar v1.1: Permite definir submenús para elementos del Sidebar de MonoBook, agregando clases
 +
* especiales al pasar con el puntero por encima para permitir el efecto en todos los navegadores.
 +
*
 +
* Copyright (C) 2010  Jesús Martínez Novo ([[User:Ciencia Al Poder]])
 +
*
 +
* This program is free software; you can redistribute it and/or modify
 +
*  it under the terms of the GNU General Public License as published by
 +
*  the Free Software Foundation; either version 2 of the License, or
 +
*  (at your option) any later version
 +
*/
 +
MonobookSidebar = {
 +
re_s: / /g,
 +
re_p: /%/g,
 +
loadedMenus: [],
 +
init: function() {
 +
if (!window.wgSidebar) return;
 +
for (var menu in wgSidebar) {
 +
var item = document.getElementById(MonobookSidebar.getId(menu));
 +
if (!item) continue;
 +
var menuId = $(item).parents().get(2).id;
 +
// Check it's a valid portlet item
 +
if (!menuId || menuId == '') continue;
 +
// Generate menu hierarchy
 +
MonobookSidebar.buildSubmenu(item, wgSidebar[menu]);
 +
// Set events
 +
MonobookSidebar.setEvents(menuId);
 +
}
 +
},
 +
buildSubmenu: function(el, arr) {
 +
var ul = document.createElement('ul');
 +
ul.className = 'sub-menu';
 +
for (var i = 0; i < arr.length; i++) {
 +
var li = document.createElement('li');
 +
if (typeof arr[i] == 'string') {
 +
var a = MonobookSidebar.linkFromText(arr[i]);
 +
li.appendChild(a);
 +
} else {
 +
for (var menukey in arr[i]) {
 +
a = MonobookSidebar.linkFromText(menukey);
 +
li.appendChild(a);
 +
MonobookSidebar.buildSubmenu(li, arr[i][menukey]);
 +
}
 +
}
 +
ul.appendChild(li);
 +
}
 +
el.appendChild(ul);
 +
el.className = 'with-sub-menu';
 +
var em = document.createElement('em');
 +
em.appendChild(document.createTextNode('\u203A'));
 +
el.firstChild.appendChild(em);
 +
},
 +
setEvents: function(menuId) {
 +
for (var i = 0; i < MonobookSidebar.loadedMenus; i++) {
 +
if (MonobookSidebar.loadedMenus[i] == menuId) return;
 +
}
 +
$('#'+menuId).children().eq(1).children().eq(0).bind('mouseover',MonobookSidebar.mouseover).bind('mouseout',MonobookSidebar.mouseout);
 +
MonobookSidebar.loadedMenus.push(menuId);
 +
},
 +
mouseover: function(e) {
 +
var target = e.target;
 +
while (target.tagName.toLowerCase() != 'div') {
 +
if (target.tagName.toLowerCase() == 'a') {
 +
target = target.parentNode;
 +
}
 +
if (target.tagName.toLowerCase() == 'li') {
 +
$(target).addClass('hover');
 +
}
 +
target = target.parentNode;
 +
}
 +
},
 +
mouseout: function(e) {
 +
var target = e.target;
 +
while (target.tagName.toLowerCase() != 'div') {
 +
if (target.tagName.toLowerCase() == 'a') {
 +
target = target.parentNode;
 +
}
 +
if (target.tagName.toLowerCase() == 'li') {
 +
$(target).removeClass('hover');
 +
}
 +
target = target.parentNode;
 +
}
 +
},
 +
linkFromText: function(txt) {
 +
var article = '', caption = '', sepPos = txt.indexOf('|');
 +
if (sepPos > 0) {
 +
article = txt.substr(0, sepPos);
 +
caption = txt.substr(sepPos+1);
 +
} else {
 +
article = caption = txt;
 +
}
 +
var a = document.createElement('a');
 +
if (article.length > 7 && article.substr(0,7) == 'http://') {
 +
a.setAttribute('href',article);
 +
} else {
 +
article = encodeURIComponent(article.replace(MonobookSidebar.re_s, '_'));
 +
a.setAttribute('href',wgArticlePath.replace('$1',article));
 +
}
 +
a.appendChild(document.createTextNode(caption));
 +
return a;
 +
},
 +
getId: function(name) {
 +
return 'n-' + encodeURIComponent(name.replace(MonobookSidebar.re_s, '-')).replace(MonobookSidebar.re_p, '.');
 +
}
 +
};
 +
/* </pre> */

Wersja z 19:01, 11 lip 2013

$(function(){
if ($.browser.mozilla)
{
$('#left-navigation, #right-navigation').css('top', '10.8em');
}
});



/* Sidebar */ 
// Para editar los elementos del sidebar, cambiar [[MediaWiki:Monobook.js/Sidebar.js]]
window.wgSidebar = (window.wgSidebar||{});
importScript('MediaWiki:Monobook.js/Sidebar.js');
 
/*
* MonobookSidebar v1.1: Permite definir submenús para elementos del Sidebar de MonoBook, agregando clases
* especiales al pasar con el puntero por encima para permitir el efecto en todos los navegadores.
*
* Copyright (C) 2010  Jesús Martínez Novo ([[User:Ciencia Al Poder]])
* 
* This program is free software; you can redistribute it and/or modify
*   it under the terms of the GNU General Public License as published by
*   the Free Software Foundation; either version 2 of the License, or
*   (at your option) any later version
*/
MonobookSidebar = {
	re_s: / /g,
	re_p: /%/g,
	loadedMenus: [],
	init: function() {
		if (!window.wgSidebar) return;
		for (var menu in wgSidebar) {
			var item = document.getElementById(MonobookSidebar.getId(menu));
			if (!item) continue;
			var menuId = $(item).parents().get(2).id;
			// Check it's a valid portlet item
			if (!menuId || menuId == '') continue;
			// Generate menu hierarchy
			MonobookSidebar.buildSubmenu(item, wgSidebar[menu]);
			// Set events
			MonobookSidebar.setEvents(menuId);
		}
	},
	buildSubmenu: function(el, arr) {
		var ul = document.createElement('ul');
		ul.className = 'sub-menu';
		for (var i = 0; i < arr.length; i++) {
			var li = document.createElement('li');
			if (typeof arr[i] == 'string') {
				var a = MonobookSidebar.linkFromText(arr[i]);
				li.appendChild(a);
			} else {
				for (var menukey in arr[i]) {
					a = MonobookSidebar.linkFromText(menukey);
					li.appendChild(a);
					MonobookSidebar.buildSubmenu(li, arr[i][menukey]);
				}
			}
			ul.appendChild(li);
		}
		el.appendChild(ul);
		el.className = 'with-sub-menu';
		var em = document.createElement('em');
		em.appendChild(document.createTextNode('\u203A'));
		el.firstChild.appendChild(em);
	},
	setEvents: function(menuId) {
		for (var i = 0; i < MonobookSidebar.loadedMenus; i++) {
			if (MonobookSidebar.loadedMenus[i] == menuId) return;
		}
		$('#'+menuId).children().eq(1).children().eq(0).bind('mouseover',MonobookSidebar.mouseover).bind('mouseout',MonobookSidebar.mouseout);
		MonobookSidebar.loadedMenus.push(menuId);
	},
	mouseover: function(e) {
		var target = e.target;
		while (target.tagName.toLowerCase() != 'div') {
			if (target.tagName.toLowerCase() == 'a') {
				target = target.parentNode;
			}
			if (target.tagName.toLowerCase() == 'li') {
				$(target).addClass('hover');
			}
			target = target.parentNode;
		}
	},
	mouseout: function(e) {
		var target = e.target;
		while (target.tagName.toLowerCase() != 'div') {
			if (target.tagName.toLowerCase() == 'a') {
				target = target.parentNode;
			}
			if (target.tagName.toLowerCase() == 'li') {
				$(target).removeClass('hover');
			}
			target = target.parentNode;
		}
	},
	linkFromText: function(txt) {
		var article = '', caption = '', sepPos = txt.indexOf('|');
		if (sepPos > 0) {
			article = txt.substr(0, sepPos);
			caption = txt.substr(sepPos+1);
		} else {
			article = caption = txt;
		}
		var a = document.createElement('a');
		if (article.length > 7 && article.substr(0,7) == 'http://') {
			a.setAttribute('href',article);
		} else {
			article = encodeURIComponent(article.replace(MonobookSidebar.re_s, '_'));
			a.setAttribute('href',wgArticlePath.replace('$1',article));
		}
		a.appendChild(document.createTextNode(caption));
		return a;
	},
	getId: function(name) {
		return 'n-' + encodeURIComponent(name.replace(MonobookSidebar.re_s, '-')).replace(MonobookSidebar.re_p, '.');
	}
};
/* </pre> */
Źródło „https://hsdxd.usermd.net/w/index.php?title=MediaWiki:Vector.js&oldid=103