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

Z High School DxD Wiki
Skocz do:nawigacji, wyszukiwania
Linia 67: Linia 67:
 
if(submenu.is(':visible'))
 
if(submenu.is(':visible'))
 
{
 
{
submenu.css({display: 'none'});
+
//submenu.css({display: 'none'});
 
}
 
}
 
console.log(submenu.is(':visible'));
 
console.log(submenu.is(':visible'));

Wersja z 21:05, 12 lip 2013

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

window.wgSidebar = (window.wgSidebar||{});
importScript('MediaWiki:Vector.js/Sidebar.js');
 

Sidebar = {
	getItem: function(name) {
		return $('#n-' + encodeURIComponent(name.replace(/ /g, '-')).replace(/%/g, '.'));
	},
	init: function() {
		if (!window.wgSidebar)
			return;
		
		for (var menu in wgSidebar) {
			var item = Sidebar.getItem(menu);
			
			Sidebar.buildSubmenu(item, wgSidebar[menu]);
		}
		
		
	},
	
	
	buildSubmenu: function(menu, items)
	{
		var ul = $('<ul>');
		
		menu.addClass('submenu');
		
		for (var i in items)
		{
			var item = items[i];
			var li = $('<li>');
			
			if (typeof item === 'string')
			{
				var link = this.getLink(item);
				li.append(link);
				ul.append(li);
			}
			else if(typeof item === 'object')
			{
				for (var j in item)
				{
					var link = this.getLink(j);
					li.append(link);
					ul.append(li);
					this.buildSubmenu(li, item[j]);
				}
			} else continue;
			
			$(menu).on('mouseover', 'a', function() {
				var parent = $(this).parent('li');
				var pos = parent.position();
			
				$(this).next().css({display:'block', left: parent.width()+pos.left, top: pos.top});
				//parent.addClass('hover');
			}).on('mouseout', 'a', function() {
			
				var submenu = $(this).next('ul');
				if(submenu.is(':visible'))
				{
					//submenu.css({display: 'none'});
				}
				console.log(submenu.is(':visible'));
				//
			});
		}
		
		menu.append(ul);
	},
	getLink: function(txt, has_submenu)
	{
		var pos = txt.indexOf('|');
		var article = '';
		var caption = '';
		
		if (pos > 0)
		{
			article = txt.substr(0, pos);
			caption = txt.substr(pos + 1);
		}
		else
		{
			article = txt;
			caption = txt;
		}
		
		var href = '';
		
		if (article.length > 7 && article.substr(0,7) == 'http://')
		{
			href = article;
		}
		else
		{
			article = encodeURIComponent(article.replace(/ /g, '_'));
			href = wgArticlePath.replace('$1',article);
		}
		
		return '<a href="' + article + '">' + caption  + '</a>';
	}
}

//$(function(){Sidebar.init();});
Źródło „https://hsdxd.usermd.net/w/index.php?title=MediaWiki:Vector.js&oldid=167