// JavaScript Document
var oInputField;	//考虑到很多函数中都要使用
var oPopDiv;		//因此采用全局变量的形式
var oColorsUl;
function initVars(){
	//初始化变量
	oInputField = $("#search");
	oPopDiv = $("#search_up");
	oColorsUl = $("#search_ul");
}
function clearColors(){
	//清除提示内容
	oColorsUl.empty();
	oPopDiv.removeClass("show");
}
function setColors(the_colors){
	//显示提示框，传入的参数即为匹配出来的结果组成的数组
	clearColors();	//每输入一个字母就先清除原先的提示，再继续
	oPopDiv.addClass("show");
	oPopDiv.css("display","block");
	for(var i=0;i<the_colors .length;i++)
		//将匹配的提示结果逐一显示给用户
		oColorsUl.append("<li url='"+the_colors[i].split("-,-")[1]+"'>"+the_colors[i].split("-,-")[0]+"</li>");
	    oColorsUl.find("li").click(function(){
		//oInputField.val($(this).text());
		document.location.href=$(this).attr('url');
		clearColors();
	}).hover(
		function(){
			$("#search_ul>li[class='mouseOver']").removeClass("mouseOver");
			$(this).addClass("mouseOver");
		},
		function(){$(this).removeClass("mouseOver");}
	);
}
function findsearch(evt){
	initVars();		//初始化变量
	if(oInputField.val().length > 0){
		//获取异步数据
		var keycode1 =evt.keyCode;
		if (keycode1!=40 && keycode1!=38 && keycode1!=13)
		{
			$("#se_val").val(oInputField.val());
			$.get("/search.asp",{keyword:oInputField.val()},
				function(data){
					var aResult = new Array();
					if(data.length > 0){
						aResult = data.split("-,,-");
						setColors(aResult);	//显示服务器结果
					}
					else
						clearColors();
			});
		}
	}
	else
		clearColors();	//无输入时清除提示框（例如用户按del键）
}
//.......
$(function(){
	$(document).keyup(function(ev){
		 var keyCode = ev.keyCode;
		 var li_length=$("#search_ul>li").length;
		 var li_length_ov=$("#search_ul>li[class='mouseOver']").prevAll().length;
		 switch (keyCode)
		 {
			 case 40:
				li_length_ov1=li_length_ov+1;
				if ($("#search_ul>li").is(".mouseOver"))
				{
				   if (li_length_ov1>=li_length)
				   {
					   $("#search_ul>li[class='mouseOver']").removeClass("mouseOver");
					   $("#search_ul").find("li:first").addClass("mouseOver");
				   }
				   else
				   {
					   $("#search_ul>li[class='mouseOver']").removeClass("mouseOver");
					   $("#search_ul>li").eq(li_length_ov1).addClass("mouseOver");
				   }
				}
				else
				{
					$("#search_ul").find("li:first").addClass("mouseOver");
				}
				break;
			 case 38:
				li_length_ov1=li_length_ov-1;
				
				if ($("#search_ul>li").is(".mouseOver"))
				{
				   if (li_length_ov1>=li_length)
				   {
					   $("#search_ul>li[class='mouseOver']").removeClass("mouseOver");
					   $("#search_ul").find("li:last").addClass("mouseOver");
				   }
				   else
				   {
					   $("#search_ul>li[class='mouseOver']").removeClass("mouseOver");
					   $("#search_ul>li").eq(li_length_ov1).addClass("mouseOver");
				   }
				}
				else
				{
					$("#search_ul").find("li:last").addClass("mouseOver");
				}
				break;
				case 13:
				if ($("#search_ul>li").is(".mouseOver"))
				{
					document.location.href=$("#search_ul>li[class='mouseOver']").attr("url");
				}
				else if(li_length>0)
				{
					document.location.href=$("#search_ul>li").eq(0).attr("url");
				}
				break
				
		 }
		 if (keyCode!=8)
		 {
			 var se_val=$("#search_ul>li[class='mouseOver']").text();
			  if (se_val!="")
			  {
				  $("#search").val(se_val);
			  }
			  else
			  {
				  
				  $("#search").val($("#se_val").val());
			  }
		 }
	})
	var isfocus=false;
	$(document).click(function(){
		if(!isfocus) $('#search_up').css('display','none'); 
	});
	initVars();
	var myvalue=oInputField.val();
	oInputField.focus(function(){
		if(oInputField.val()==myvalue){
			oInputField.val('');
		}
		isfocus=true;
	  }
	)
	oInputField.blur(function(){
		if(oInputField.val()==''){
     	   oInputField.val(myvalue);
		 }
		isfocus=false;
	  }
	)
  }
)