/** ----------------------------------
	jQuery ToolTip plugin
	Author: David Shieh
	Email: mykingheaven@gmail.com
------------------------------------ */

$.fn.betterTooltip = function(options){
	
	//初始化设置值
	var defaults = { speed: 200, delay: 300 };
	var options = $.extend(defaults, options);
	
	//创建气泡层
	var getTip = function(mark) {
		var tTip = 
			"<div class='tip'>" +
				"<div class='tipMid'>"	+
					mark.attr('title') +
				"</div>" +
				"<div class='tipBtm'></div>" +
			"</div>";
		mark.removeAttr("title");
		return tTip;
	}
	
	//设置气泡层的显示位置
	var setTip = function(tip, top, left){
		var topOffset = tip.height();
		var xTip = (left-53)+"px";
		var yTip = (top-topOffset-30)+"px";
		tip.css({'top' : yTip, 'left' : xTip});
	}

	//对每个标记元素设置气泡层和绑定hover事件
	$(this).each(function(){
		//获得当前标记元素
		var mark = $(this);
		//将该气泡层加入到body中
		$("body").append(getTip(mark));
		//获得当前标记元素的气泡层
		var tip = $("body").find(".tip:last");
		
		//设置当前标记元素的hover事件
		mark.hover(
			function() {
				//取得当前标记元素的位置
				var offset = mark.position();
				var tLeft = offset.left;
				var tTop = offset.top;
				//设置该气泡的显示位置
				setTip(tip, tTop, tLeft);
				//显示气泡层
				tip.show();
				//tip.css("display", "block");
			},
			function() {
				//隐藏气泡层
				tip.hide();
				//tip.css("display", "none");
			}
		);
	});
};