﻿function header_trim(str) {
    return str.replace(/(\s*$)|(^\s*)/g, '');
}
function getWinsize() {
    var winWidth = 0;
    var winHeight = 0;
    //width
    if (window.innerWidth)
        winWidth = window.innerWidth;
    else if ((document.body) && (document.body.clientWidth))
        winWidth = document.body.clientWidth;
    //height
    if (window.innerHeight)
        winHeight = window.innerHeight;
    else if ((document.body) && (document.body.clientHeight))
        winHeight = document.body.clientHeight;
    if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth) {
        winHeight = document.documentElement.clientHeight;
        winWidth = document.documentElement.clientWidth;
    }
    return { 'width': winWidth, 'height': winHeight };
}
var sug_gid = function(node) {
    return document.getElementById(node);
}
var timecolsecategory, issettime = false,isover=false;
function showCategory(aid, did, json_url, evt) {
    var divotherChannel = sug_gid(did);
    isover = true;
    setTimeout(function(){
        if (isover) {
            divotherChannel.style.display = "block";
            sug_gid(aid).className = "ddnewhead_category";
            if (!menudataloaded) {
                loadCategoryJson(json_url);
            }
        }
    },300);
}
function hiddenCategory(event, did) {
    isover = false;
    var obj = sug_gid(did);
    var obj2 = sug_gid("a_category");
    if (isMouseLeaveOrEnter(event, obj) && isMouseLeaveOrEnter(event, obj2)) {
        issettime = true;
        timecolsecategory = setTimeout(function() {
            obj.style.display = "none";
            obj2.className = "ddnewhead_category ddnewhead_category_unit";
            for (i = 1; i < 29; i++) {
                if (sug_gid('__ddnav_sort' + i)) {
                    sug_gid('__ddnav_sort' + i).style.display = "none";
                    sug_gid('li_label_' + i).className = "";
                }
            }
        }, 100);
    }
}
function hideCategory(event, did) { //for index
    var obj = sug_gid(did);
    var obj2 = sug_gid("a_category");
    if (isMouseLeaveOrEnter(event, obj) && isMouseLeaveOrEnter(event, obj2)) {
        issettime = true;
        timecolsecategory = setTimeout(function() {
            obj2.className = "ddnewhead_category ddnewhead_category_normal";
            for (i = 1; i < 29; i++) {
                if (sug_gid('__ddnav_sort' + i)) {
                    sug_gid('__ddnav_sort' + i).style.display = "none";
                    sug_gid('li_label_' + i).className = "";
                }
            }
        }, 100);
    }
}
function baimouseOver() {
    sug_gid('a_baihchannel').className = "goods hover";
    sug_gid('__ddnav_guan').style.display = "block";
}
function baimouseOut() {
    sug_gid('a_baihchannel').className = "goods";
    sug_gid('__ddnav_guan').style.display = "none";
}
var timecolsediv;
var timestartdiv;
var showindex = 99;
var menudataloaded = false;
function amouseOver(index, evt, obj, key) {
    if (!menudataloaded) return;
    CreateCategory(index, key);

    showindex = index;
    if (isMouseLeaveOrEnter(evt, obj)) {
        clearTimeout(timecolsediv);
        if (issettime) clearTimeout(timecolsecategory);
        sug_gid('a_category').className = "ddnewhead_category";
        timestartdiv = setTimeout(function() {
            if (showindex != index) return;
            for (i = 1; i < 29; i++) {
                if (sug_gid('__ddnav_sort' + i)) { sug_gid('__ddnav_sort' + i).style.display = "none"; sug_gid('li_label_' + i).className = ""; }
            }
            var obj_lbl = sug_gid('li_label_' + index);
            obj_lbl.className = "hover";
            var obj_div = sug_gid('__ddnav_sort' + index);
            if (obj_div.style.display == 'none') {
                if (index == 1) { obj_div.style.display = "block"; return; }
                obj_div.style.display = "block";

                var winHeight = getWinsize().height + obj_lbl.offsetHeight;
                var liHeight = obj_lbl.offsetTop + 202;
                var naviHeight = obj_div.offsetHeight + liHeight;
                var scrollheight = 0;
                if (document.documentElement && document.documentElement.scrollTop) scrollheight = document.documentElement.scrollTop;
                else scrollheight = document.body.scrollTop;

                if (naviHeight > winHeight + scrollheight) {
                    var margintop = 0;
                    if (liHeight > winHeight - obj_lbl.offsetHeight + scrollheight + 1 && liHeight < winHeight + scrollheight + 4) {
                        margintop = "-" + (naviHeight - winHeight - scrollheight - obj_lbl.offsetHeight) + "px";
                    } else {
                        margintop = "-" + (naviHeight - winHeight - scrollheight) + "px";
                        if (naviHeight < 0) margintop = 0;
                    }
                    obj_div.style.top = margintop;
                }
            }
        }, 100);
    }
}
function amouseOut(index, event, obj) {
    if (!menudataloaded) return;

    if (isMouseLeaveOrEnter(event, obj)) {
        sug_gid('a_category').className = "ddnewhead_category";

        clearTimeout(timestartdiv);
        timecolsediv = setTimeout(function() {
            var obj = sug_gid('__ddnav_sort' + index);
            obj.style.display = "none";
            sug_gid('li_label_' + index).className = "";
        }, 100);
    }
}
function isMouseLeaveOrEnter(e, handler) {
    if (e.type != 'mouseout' && e.type != 'mouseover') return false;
    var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement;
    while (reltg && reltg != handler) {
        reltg = reltg.parentNode;
    }
    return (reltg != handler);
}
function popmouseOver(index) {
    if (!menudataloaded) return;
    clearTimeout(timecolsediv);
    sug_gid('li_label_' + index).className = "hover";
}
function fill_brand_promo(sid, cid) {
    var bangobj = sug_gid('popup_bang_' + sid);
    var promobj = sug_gid('popup_promotion_' + cid);
    var fillstring = "";
    if (bangobj) {
        fillstring = bangobj.innerHTML;
        if (promobj) {
            fillstring += promobj.innerHTML;
        }
        if (header_trim(bangobj.innerHTML) != "") {
            sug_gid('brand_promo_' + cid).innerHTML = fillstring;
        }
    }
}
function loadCategoryJson(url) {
    var scriptOld = document.getElementById('json_script');
    if (scriptOld != null) {
        scriptOld.src = url;
        return;
    }
    var head = document.documentElement.firstChild, script = document.createElement('script');
    script.id = 'json_script';
    script.type = 'text/javascript';
    script.src = url;
    if (scriptOld != null)
        head.replaceChild(script, scriptOld);
    else
        head.appendChild(script);
}
