var tooltip=function(){
	var top = 3;
	var left = 3;
	var maxw = 300;
	var speed = 10;
	var timer = 20;
	var endalpha = 100;
	var alpha = 0;
	var tt,t,c,b,h,tta;
	var ie = document.all ? true : false;
	return{
		show:function(obj){
			if(tt == null){
				var html = new StringBuffer();
				html.append("<div id='tool_tip' class='tooltip_div'>");
				html.append("  <div class='tooltip_left'>");
				html.append("    <div id='tool_tip_arraw' class='tooltip_arraw'></div>");
				html.append("  </div>");
				html.append("  <div class='tooltip_right'>");
				html.append("    <ul>");
				html.append("      <li class='tooltip_rt'></li>");
				html.append("      <li class='tooltip_rc'>");
				html.append("       <div class='tooltip_info'>");
				html.append("         <ul>");
				html.append("           <li id='tt_info_img_li'><img id='tt_info_img' src='#' /></li>");
				html.append("           <li>");
				html.append("             <span class='tooltip_title'>Name:</span>");
				html.append("             <span id='tt_info_name'></span>");
				html.append("           </li>");
				html.append("           <li>");
				html.append("             <span class='tooltip_title'>Cuisine:</span>");
				html.append("             <span id='tt_info_cuisine'></span>");
				html.append("           </li>");
				html.append("           <li>");
				html.append("             <span class='tooltip_title'>Average:</span>");
				html.append("             <span id='tt_info_per'></span>");
				html.append("           </li>");
				html.append("           <li>");
				html.append("             <span class='tooltip_title'>Region:</span>");
				html.append("             <span id='tt_info_district'></span>");
				html.append("           </li>");
				html.append("           <li>");
				html.append("             <span class='tooltip_title'>Address:</span>");
				html.append("             <span id='tt_info_address'></span>");
				html.append("           </li>");
				html.append("         </ul>");
				html.append("       </div>");
				html.append("      </li>");
				html.append("      <li class='tooltip_rb'></li>");
				html.append("    </ul>");
				html.append("  </div>");
				html.append("</div>");
				document.body.insertAdjacentHTML("afterBegin",html);

				tt = document.getElementById("tool_tip");
				tta = document.getElementById("tool_tip_arraw");
				tt.style.opacity = 0;
				tt.style.filter = 'alpha(opacity=0)';
				document.onmousemove = this.pos;
			}
			tt.style.display = 'block';
			
			//设置数据
			$("#tt_info_img").attr("src",obj.getAttribute("rest_picurl")); 
			
			$("#tt_info_name").html(obj.getAttribute("rest_name"));
			$("#tt_info_cuisine").html(obj.getAttribute("rest_cuisine"));
			$("#tt_info_district").html(obj.getAttribute("rest_district"));
			$("#tt_info_address").html(obj.getAttribute("rest_address"));
			$("#tt_info_per").html(obj.getAttribute("rest_per"));
			
			var rest_havepic = obj.getAttribute("rest_havepic");
			if (rest_havepic == "false") {
				$("#tt_info_img_li").hide();
			} else {
				$("#tt_info_img_li").show();
			}
			
			//-------
			h = parseInt(tt.offsetHeight) + top;
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(1)},timer);
		},
		pos:function(e){
			var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
			var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;

			tt.style.left = (l + left+5) + 'px';
			
			var ttp = getPosition(tt);
			var th = u+ttp.height;
			var bh = document.body.scrollHeight;
			var at = 20;
			if (th>bh){
				var nowTop = (bh-ttp.height-at);
				tt.style.top = nowTop + 'px';
				tta.style.top = u-nowTop + 'px';
				
			} else {
				tt.style.top = (u -20) + 'px';
				tta.style.top = at + 'px';

			}			
		},
		fade:function(d){
			var a = alpha;
			if((a != endalpha && d == 1) || (a != 0 && d == -1)){
				var i = speed;
				if(endalpha - a < speed && d == 1){
					i = endalpha - a;
				}else if(alpha < speed && d == -1){
					i = a;
				}
				alpha = a + (i * d);
				tt.style.opacity = alpha * .01;
				tt.style.filter = 'alpha(opacity=' + alpha + ')';
			}else{
				clearInterval(tt.timer);
				if(d == -1){tt.style.display = 'none'}
			}
		},
		hide:function(){
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(-1)},timer);
		}
	};
}();