// JavaScript Document - Simple Tooltip by Soh Tanaka
$(document).ready(function() {
	//Tooltips
	var tip;
		$(".tip_trigger").hover(function(){
	
			//Caching the tooltip and removing it from container; then appending it to the body
			tip = $(this).find('.tip').remove();
			$('body').append(tip);
	
			tip.show(); //Show tooltip
	
		}, function() {
	
			tip.hide().remove(); //Hide and remove tooltip appended to the body
			$(this).append(tip); //Return the tooltip to its original position
	
		}).mousemove(function(e) {
		//console.log(e.pageX)
			  var mousex = e.pageX + 20; //Get X coodrinates
			  var mousey = e.pageY + 20; //Get Y coordinates
			  var tipWidth = tip.width(); //Find width of tooltip
			  var tipHeight = tip.height(); //Find height of tooltip
	
			 //Distance of element from the right edge of viewport
			  var tipVisX = $(window).width() - (mousex + tipWidth);
			  var tipVisY = $(window).height() - (mousey + tipHeight);
	
			if ( tipVisX < 20 ) { //If tooltip exceeds the X coordinate of viewport
				mousex = e.pageX - tipWidth - 20;
				$(this).find('.tip').css({  top: mousey, left: mousex });
			} if ( tipVisY < 20 ) { //If tooltip exceeds the Y coordinate of viewport
				mousey = e.pageY - tipHeight - 20;
				tip.css({  top: mousey, left: mousex });
			} else {
				tip.css({  top: mousey, left: mousex });
			}
		});
});

