// Inicializace.
function init_tooltip() {
	// Existuje element?
	if (!$('.tooltip').length) {
		// Pokud neexistuje, koncíme.
		return;
	}

	// Vložíme bublinovou nápovedu (skrytou).
	$('body').append('<div id="tooltip"><div id="tooltip_inner">' + '</div></div>');

	// Prázdné promenné.
	var $tt_title, $tt_alt;	
	var $tt = $('#tooltip');
	var $tt_i = $('#tooltip_inner');

	// Hlídáme událost hover.
	$('.tooltip').hover(function() {
		// Uložíme si atribut title a vyprázdníme jej.
		if ($(this).attr('title')) {
			$tt_title = $(this).attr('title');
			$(this).attr('title', '');
		}
	
		// Uložíme si atribut alt a vyprázdníme jej.
		if ($(this).attr('alt')) {
			$tt_alt = $(this).attr('alt');
			$(this).attr('alt', '');
		}
	
		// Vložíme uložený text atributu title.
		$tt_i.html($tt_title);
		
		// Zobrazíme bublinovou nápovedu.
		$tt.show();
	},

function() {
	// Schováme bublinovou nápovedu.
	$tt.hide();
	
	// Vyprázdníme text.
	$tt_i.html('');
	
	// Opravíme atribut title.
	if ($tt_title) {
		$(this).attr('title', $tt_title);
	}

	// Opravíme atribut alt.
	if ($tt_alt) {
		$(this).attr('alt', $tt_alt);
	}

// Sledujeme pohyb ukazatele myši.
}).mousemove(function(ev) {
	// Pozice ukazele myši.
	var $ev_x = ev.pageX;
	var $ev_y = ev.pageY;

	// Rozmery bublinové nápovedy.
	var $tt_x = $tt.outerWidth();
	var $tt_y = $tt.outerHeight();

	// Rozmery zobrazovací plochy.
	var $bd_x = $('body').outerWidth();
	var $bd_y = $('body').outerHeight();

	// Presuneme bublinovou nápovedu.
	$tt.css({
		'top': $ev_y + $tt_y > $bd_y ? $ev_y - $tt_y : $ev_y,
		'left': $ev_x + $tt_x + 20 > $bd_x ? $ev_x - $tt_x - 10 : $ev_x + 15
	});
});
}

// Uvedeme veci do pohybu.
$(document).ready(function() {
	init_tooltip();
});
