var $ = function(Id) {
    return document.getElementById(Id) ? document.getElementById(Id) : null;
};
var $N = function(Name) {
    return document.getElementsByName(Name) ? document.getElementsByName(Name) : Name;
};
var $createTag = function(tagName) {
    return document.createElement(tagName);
};
var $removeTag = function(obj) {
    document.body.removeChild(obj);
};
var $getTop = function(obj) {
    var offset = obj.offsetTop;
    if (obj.offsetParent != null) offset += $getTop(obj.offsetParent);
    return offset;
};
var $getLeft = function(obj) {
    var offset = obj.offsetLeft;
    if (obj.offsetParent != null) offset += $getLeft(obj.offsetParent);
    return offset;
};
var $ajax = function createXMLHttpRequest() {
    var xmlHttp = false;
    try {
        xmlHttp = new XMLHttpRequest();
    }
    catch (trymicrosoft) {
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } //No.1
        catch (othermicrosoft) {
            try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP") }
            catch (failed) { }
        } //No.1
    }
    return xmlHttp;
};
var ltrim = function(val) { return val.replace(/(^\s*)/g, ""); };
var rtrim = function(val) { return val.replace(/(\s*$)/g, ""); };
var trim = function trim(val) { return rtrim(ltrim(val)); };
document.write("<style>");
document.write("#suggest{position:absolute;background:#fff;text-align:left;border:1px solid #000;height:auto!important;height:20px;min-height:20px;z-index:999;}");
document.write("#suggest .suggestOver{background:#e8e2fe;}");
document.write("</style>");
var suggestDiv = $createTag("div");
var lastKey = "";
var selectedIndex = 0;
var inputObject = null;
var showSuggest = function(inputObj) {
    inputObject = inputObj;
    var key = trim(inputObj.value);
    if (key == lastKey) return false;
    else lastKey = key;
    suggestDiv.style.display = "none";
    if (/^\s*$/.test(key)) {
        return false;
    }
    selectedIndex = -1;
    var xmlHttp = $ajax();
    /// <reference path="../ajax.aspx" />

    xmlHttp.open("get", "../AdvSearchAjax.aspx?skey=" + escape(key), true);
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            var xmldoc = xmlHttp.responseXML;
            var keynodes = xmldoc.getElementsByTagName("key");
            if (keynodes.length > 0) {
                suggestDiv.id = "suggest";
                suggestDiv.style.width = inputObj.offsetWidth + "px";
                //var suggest = "";
                suggestDiv.innerHTML = "";
                for (var i = 0; i < keynodes.length; i++) {
                    var keyDiv = $createTag("div");
                    keyDiv.style.width = "97%";
                    keyDiv.style.padding = "0";
                    keyDiv.style.margin = "2px 6px 2px 6px";
                    keyDiv.style.height = "18px";
                    keyDiv.style.lineHeight = "18px";
                    var oText = document.createTextNode(keynodes[i].getAttribute("value"));
                    keyDiv.appendChild(oText);
                    keyDiv.onmouseover = function() {
                        selectedIndex = -1;
                        var divlist = suggestDiv.getElementsByTagName("div");
                        for (var k = 0; k < divlist.length; k++) {
                            divlist[k].className = "";
                            if (divlist[k] == this) selectedIndex = k;
                        }
                        this.className = "suggestOver";
                    }
                    keyDiv.onmouseout = function() {
                        this.className = "";
                    }
                    keyDiv.onclick = function() {
                        inputObj.value = this.innerHTML;
                        //suggestDiv.style.display = "none";
                        var formObj = inputObj.parentNode;
                        while (formObj) {
                            if (formObj.tagName.toLowerCase() == "form") {
                                formObj.submit(); break;
                            } else {
                                formObj = formObj.parentNode;
                            }
                        }
                    }
                    suggestDiv.appendChild(keyDiv);
                }
                suggestDiv.style.top = parseInt($getTop(inputObj) + inputObj.offsetHeight) + "px";
                suggestDiv.style.left = parseInt($getLeft(inputObj)) + "px";
                suggestDiv.style.display = "block";
                inputObj.parentNode.appendChild(suggestDiv);
                //
            } else {
                suggestDiv.style.display = "none";
            }
        } //end if readyState
    } //eixt function
    xmlHttp.send(null);
};
var changeSelect = function(isUp, inputObj) {
    if (isUp) selectedIndex++;
    else selectedIndex--;
    if (selectedIndex < 0) selectedIndex = 0;
    var divlist = suggestDiv.getElementsByTagName("div");
    if (selectedIndex >= divlist.length)
        selectedIndex = divlist.length - 1;
    for (var i = 0; i < divlist.length; i++) {
        if (i == selectedIndex) {
            divlist[i].className = "suggestOver";
            inputObj.value = divlist[i].innerHTML;
        } else {
            divlist[i].className = "";
        }
    }
};
var getEvent = function(event) {
    return event ? event : (window.event ? window.event : null);
};

var isOpen = false; //按搜索回车建不出现下拉框
function SubmitKeyClick(button) {
    if (event.keyCode == 13) {
        isOpen = true;
        event.keyCode = 9;
        event.returnValue = false;
        var btn = document.all[button] == null ? document.getElementById(button) : document.all[button];
        btn.click();
    }
}
function suggest(event, inputObj) {

    if (isOpen == false) {
        event = getEvent(event);
        var keyCode = event.keyCode
        if (keyCode == 40 || keyCode == 38) {//下上
            var isUp = false;
            if (keyCode == 40) isUp = true;
            changeSelect(isUp, inputObj);
        } else {
            showSuggest(inputObj);
        }

    }
    if (isOpen == true) {

        isOpen = false;
    }

}


//var suggest=function(event,inputObj){
//	event = getEvent(event);
//	var keyCode=event.keyCode
//	if(keyCode==40||keyCode==38){//下上
//		var isUp=false;
//		if(keyCode==40) isUp=true;
//		changeSelect(isUp,inputObj);
//	}else{
//		showSuggest(inputObj);
//	}
//};
document.onclick = function(event) {
    event = getEvent(event);
    if (event.srcElement.className == "suggestOver") {
        window.location = "/Search.aspx?keyword=" + escape(trim(inputObject.value).replace("?", ""));
        //LinktoSearch(trim(inputObject.value).replace("?",""));
    }
    else {
        suggestDiv.style.display = "none";
    }
};
var changeLanguageLink = function(url) {
    document.writeln('<a href="' + url + '" style="color:#FF0000;">简体/繁體</a>');
};

var inputOnblur = function() { setTimeout('suggestDiv.style.display="none";', 100); };


function LinktoSearch(keyword) {
    var para = "{'keyword':'" + keyword + "'}";
    $.ajax({
        type: "POST",
        url: "Default.aspx/GotoSearch",
        data: para,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg) {
            window.location = msg.d;
        },
        error: function(errmsg) {
            alert("错误");
        }
    });
}
