﻿var userAgent = navigator.userAgent.toLowerCase();
var is_opera = userAgent.indexOf('opera') != -1 && opera.version();
var is_moz = (navigator.product == 'Gecko') && userAgent.substr(userAgent.indexOf('firefox') + 8, 3);
var is_ie = (userAgent.indexOf('msie') != -1 && !is_opera) && userAgent.substr(userAgent.indexOf('msie') + 5, 3);

//window.onerror=function(){return true;}

function $(id) {
return document.getElementById(id);
}

function isUndefined(variable) {
return typeof variable == 'undefined' ? true : false;
}

function _attachEvent(obj, evt, func) {
if(obj.addEventListener) {
obj.addEventListener(evt, func, false);
} else if(obj.attachEvent) {
obj.attachEvent("on" + evt, func);
}
}

function doane(event) {
e = event ? event : window.event;
if(is_ie) {
e.returnValue = false;
e.cancelBubble = true;
} else if(e) {
e.stopPropagation();
e.preventDefault();
}
}

var jsmenu = new Array();
jsmenu['active'] = new Array();
jsmenu['timer'] = new Array();
jsmenu['iframe'] = new Array();

function initCtrl(ctrlobj, click, duration, timeout, layer) {
if(ctrlobj && !ctrlobj.initialized) {
ctrlobj.initialized = true;
ctrlobj.unselectable = true;

ctrlobj.outfunc = typeof ctrlobj.onmouseout == 'function' ? ctrlobj.onmouseout : null;
ctrlobj.onmouseout = function() {
if(this.outfunc) this.outfunc();
if(duration < 3) jsmenu['timer'][ctrlobj.id] = setTimeout('hideMenu(' + layer + ')', timeout);
}

ctrlobj.overfunc = typeof ctrlobj.onmouseover == 'function' ? ctrlobj.onmouseover : null;
ctrlobj.onmouseover = function(e) {
doane(e);
if(this.overfunc) this.overfunc();
if(click) {
clearTimeout(jsmenu['timer'][this.id]);
} else {
for(var id in jsmenu['timer']) {
if(jsmenu['timer'][id]) clearTimeout(jsmenu['timer'][id]);
}
}
}
}
}

function initMenu(ctrlid, menuobj, duration, timeout, layer, drag) {
if(menuobj && !menuobj.initialized) {
menuobj.initialized = true;
menuobj.ctrlkey = ctrlid;
menuobj.onclick = ebygum;
menuobj.style.position = 'absolute';
if(duration < 3) {
if(duration > 1) {
menuobj.onmouseover = function() {
clearTimeout(jsmenu['timer'][ctrlid]);
}
}
if(duration != 1) {
menuobj.onmouseout = function() {
jsmenu['timer'][ctrlid] = setTimeout('hideMenu(' + layer + ')', timeout);
}
}
}
menuobj.style.zIndex = 50;
if(is_ie) {
menuobj.style.filter += "progid:DXImageTransform.Microsoft.shadow(direction=135,color=#cccccc,strength=2)";
}
}
}

function showMenu(ctrlid, click, offset, duration, timeout, layer, showid, maxh, drag) {
var ctrlobj = $(ctrlid);
if(!ctrlobj) return;
if(isUndefined(click)) click = false;
if(isUndefined(offset)) offset = 0;
if(isUndefined(duration)) duration = 2;
if(isUndefined(timeout)) timeout = 500;
if(isUndefined(layer)) layer = 0;
if(isUndefined(showid)) showid = ctrlid;
var showobj = $(showid);
var menuobj = $(showid + '_menu');
if(!showobj|| !menuobj) return;
if(isUndefined(maxh)) maxh = 400;
if(isUndefined(drag)) drag = false;

if(click && jsmenu['active'][layer] == menuobj) {
hideMenu(layer);
return;
} else {
hideMenu(layer);
}

var len = jsmenu['timer'].length;
if(len > 0) {
for(var i=0; i<len; i++) {
if(jsmenu['timer'][i]) clearTimeout(jsmenu['timer'][i]);
}
}

initCtrl(ctrlobj, click, duration, timeout, layer);
initMenu(ctrlid, menuobj, duration, timeout, layer, drag);

menuobj.style.display = '';
if(!is_opera) {
menuobj.style.clip = 'rect(auto, auto, auto, auto)';
}

setMenuPosition(showid, offset);

if(is_ie && is_ie < 7) {
if(!jsmenu['iframe'][layer]) {
var iframe = document.createElement('iframe');
iframe.style.display = 'none';
iframe.style.position = 'absolute';
iframe.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';
$('append_parent') ? $('append_parent').appendChild(iframe) : menuobj.parentNode.appendChild(iframe);
jsmenu['iframe'][layer] = iframe;
}
jsmenu['iframe'][layer].style.top = menuobj.style.top;
jsmenu['iframe'][layer].style.left = menuobj.style.left;
jsmenu['iframe'][layer].style.width = menuobj.w;
jsmenu['iframe'][layer].style.height = menuobj.h;
jsmenu['iframe'][layer].style.display = 'block';
}

if(maxh && menuobj.scrollHeight > maxh) {
menuobj.style.height = maxh + 'px';
if(is_opera) {
menuobj.style.overflow = 'auto';
} else {
menuobj.style.overflowY = 'auto';
}
}

if(!duration) {
setTimeout('hideMenu(' + layer + ')', timeout);
}

jsmenu['active'][layer] = menuobj;
}

function setMenuPosition(showid, offset) {
var showobj = $(showid);
var menuobj = $(showid + '_menu');
if(isUndefined(offset)) offset = 0;
if(showobj) {
showobj.pos = fetchOffset(showobj);
showobj.X = showobj.pos['left'];
showobj.Y = showobj.pos['top'];
showobj.w = showobj.offsetWidth;
showobj.h = showobj.offsetHeight;
menuobj.w = menuobj.offsetWidth;
menuobj.h = menuobj.offsetHeight;
if(offset < 3) {
menuobj.style.left = (showobj.X + menuobj.w > document.body.clientWidth) && (showobj.X + showobj.w - menuobj.w >= 0) ? showobj.X + showobj.w - menuobj.w + 'px' : showobj.X + 'px';
menuobj.style.top = offset == 1 ? showobj.Y + 'px' : (offset == 2 || ((showobj.Y + showobj.h + menuobj.h > document.documentElement.scrollTop + document.documentElement.clientHeight) && (showobj.Y - menuobj.h >= 0)) ? (showobj.Y - menuobj.h) + 'px' : showobj.Y + showobj.h + 'px');
} else if(offset == 3) {
menuobj.style.left = (document.body.clientWidth - menuobj.clientWidth) / 2 + document.body.scrollLeft + 'px';
//menuobj.style.top = (document.body.clientHeight - menuobj.clientHeight) / 2 + document.body.scrollTop + 'px';
menuobj.style.top = '80px';
}
if(menuobj.style.clip && !is_opera) {
menuobj.style.clip = 'rect(auto, auto, auto, auto)';
}
}
}

function hideMenu(layer) {
if(isUndefined(layer)) layer = 0;
if(jsmenu['active'][layer]) {
clearTimeout(jsmenu['timer'][jsmenu['active'][layer].ctrlkey]);
jsmenu['active'][layer].style.display = 'none';
if(is_ie && is_ie < 7 && jsmenu['iframe'][layer]) {
jsmenu['iframe'][layer].style.display = 'none';
}
jsmenu['active'][layer] = null;
}
}

function fetchOffset(obj) {
var left_offset = obj.offsetLeft;
var top_offset = obj.offsetTop;
while((obj = obj.offsetParent) != null) {
left_offset += obj.offsetLeft;
top_offset += obj.offsetTop;
}
return { 'left' : left_offset, 'top' : top_offset };
}

function ebygum(eventobj) {
if(!eventobj || is_ie) {
window.event.cancelBubble = true;
return window.event;
} else {
if(eventobj.target.type == 'submit') {
eventobj.target.form.submit();
}
eventobj.stopPropagation();
return eventobj;
}
}

function showMap() {
showMenu('cpmap', true, 3, 3);
}

function resetEscAndF5(e) {
e = e ? e : window.event;
actualCode = e.keyCode ? e.keyCode : e.charCode;
if(actualCode == 27) {
if($('cpmap_menu').style.display == 'none') {
showMap();
} else {
hideMenu();
}
}
if(actualCode == 116 && parent.main) {
if(document.all) {
e.keyCode = 0;
e.returnValue = false;
} else {
e.cancelBubble = true;
e.preventDefault();
}
}
}
_attachEvent(document.documentElement, 'keydown', resetEscAndF5);

var vmap='<ul class="cnote"><li><img src="/Images/btn_map.gif" /></li><li> 按 “ ESC ” 键展开 / 关闭此菜单</li></ul><table class="cmlist" id="mapmenu"><tr><td valign="top"><ul class="cmblock"><li><h4>华北</h4></li><li><a href="/Beijing/Beijing.htm">北京</a></li><li><a href="/Tianjin/Tianjin.htm">天津</a></li><li><a href="/Hebei/Shijiazhuang.htm">石家庄</a></li><li><a href="/Hebei/Handan.htm">邯郸</a></li><li><a href="/Hebei/Qinhuangdao.htm">秦皇岛</a></li><li><a href="/Hebei/Zhangjiakou.htm">张家口</a></li><li><a href="/Shanxi/Taiyuan.htm">太原</a></li><li><a href="/Shanxi/Linfen.htm">临汾</a></li><li><a href="/Shanxi/Wutaishan.htm">五台山</a></li><li><a href="/Neimenggu/Huhehaote.htm">呼和浩特</a></li><li><a href="/Neimenggu/Eerduosi.htm">鄂尔多斯</a></li><li><a href="/Neimenggu/Manzhouli.htm">满洲里</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>东北</h4></li><li><a href="/Heilongjiang/Haerbin.htm">哈尔滨</a></li><li><a href="/Heilongjiang/Mohe.htm">漠河</a></li><li><a href="/Heilongjiang/Qiqihaer.htm">齐齐哈尔</a></li><li><a href="/Heilongjiang/Suihua.htm">绥化</a></li><li><a href="/Jilin/Changchun.htm">长春</a></li><li><a href="/Jilin/Jilin.htm">吉林</a></li><li><a href="/Jilin/Tonghua.htm">通化</a></li><li><a href="/Liaoning/Shenyang.htm">沈阳</a></li><li><a href="/Liaoning/Dalian.htm">大连</a></li><li><a href="/Liaoning/Anshan.htm">鞍山</a></li><li><a href="/Liaoning/Jinzhou.htm">锦州</a></li><li><a href="/Liaoning/Tieling.htm">铁岭</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>华南</h4></li><li><a href="/Guangdong/Guangzhou.htm">广州</a></li><li><a href="/Guangdong/Dongguan.htm">东莞</a></li><li><a href="/Guangdong/Shenzhen.htm">深圳</a></li><li><a href="/Guangdong/Zhuhai.htm">珠海</a></li><li><a href="/Guangdong/Zhongshan.htm">中山</a></li><li><a href="/Guangxi/Nanning.htm">南宁</a></li><li><a href="/Guangxi/Guilin.htm">桂林</a></li><li><a href="/Guangxi/Liuzhou.htm">柳州</a></li><li><a href="/Hainan/Haikou.htm">海口</a></li><li><a href="/Hainan/Sanya.htm">三亚</a></li><li><a href="/Hongkong/Hongkong.htm">香港</a></li><li><a href="/Macao/Macao.htm">澳门</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>西北</h4></li><li><a href="/Shaanxi/Xian.htm">西安</a></li><li><a href="/Shaanxi/Baoji.htm">宝鸡</a></li><li><a href="/Shaanxi/Yanan.htm">延安</a></li><li><a href="/Gansu/Lanzhou.htm">兰州</a></li><li><a href="/Gansu/Jiuquan.htm">酒泉</a></li><li><a href="/Gansu/Tianshui.htm">天水</a></li><li><a href="/Qinghai/Xining.htm">西宁</a></li><li><a href="/Qinghai/Yushu.htm">玉树</a></li><li><a href="/Ningxia/Yinchuan.htm">银川</a></li><li><a href="/Ningxia/Guyuan.htm">固原</a></li><li><a href="/Xinjiang/Wulumuqi.htm">乌鲁木齐</a></li><li><a href="/Xinjiang/Tulufan.htm">吐鲁番</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>西南</h4></li><li><a href="/Chongqing/Chongqing.htm">重庆</a></li><li><a href="/Sichuan/Chengdu.htm">成都</a></li><li><a href="/Sichuan/Mianyang.htm">绵阳</a></li><li><a href="/Sichuan/Leshan.htm">乐山</a></li><li><a href="/Guizhou/Guiyang.htm">贵阳</a></li><li><a href="/Guizhou/Zunyi.htm">遵义</a></li><li><a href="/Guizhou/Liupanshui.htm">六盘水</a></li><li><a href="/Yunnan/Kunming.htm">昆明</a></li><li><a href="/Yunnan/Dali.htm">大理</a></li><li><a href="/Yunnan/Lijiang.htm">丽江</a></li><li><a href="/Xizang/Lasa.htm">拉萨</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>华东</h4></li><li><a href="/Shanghai/Shanghai.htm">上海</a></li><li><a href="/Fujian/Fuzhou.htm">福州</a></li><li><a href="/Fujian/Xiamen.htm">厦门</a></li><li><a href="/Anhui/Hefei.htm">合肥</a></li><li><a href="/Jiangxi/Nanchang.htm">南昌</a></li><li><a href="/Shandong/Jinan.htm">济南</a></li><li><a href="/Shandong/Qingdao.htm">青岛</a></li><li><a href="/Zhejiang/Hangzhou.htm">杭州</a></li><li><a href="/Zhejiang/Shaoxing.htm">绍兴</a></li><li><a href="/Zhejiang/Ningbo.htm">宁波</a></li><li><a href="/Jiangsu/Nanjing.htm">南京</a></li><li><a href="/Jiangsu/Suzhou.htm">苏州</a></li><li><a href="/Jiangsu/Wuxi.htm">无锡</a></li></ul></td><td valign="top"><ul class="cmblock"><li><h4>华中</h4></li><li><a href="/Henan/Zhengzhou.htm">郑州</a></li><li><a href="/Henan/Luoyang.htm">洛阳</a></li><li><a href="/Henan/Kaifeng.htm">开封</a></li><li><a href="/Hubei/Wuhan.htm">武汉</a></li><li><a href="/Hubei/Xiangfan.htm">襄樊</a></li><li><a href="/Hubei/Yichang.htm">宜昌</a></li><li><a href="/Hubei/Shiyan.htm">十堰</a></li><li><a href="/Hunan/Changsha.htm">长沙</a></li><li><a href="/Hunan/Zhangjiajie.htm">张家界</a></li><li><a href="/Hunan/Fenghuang.htm">凤凰</a></li><li><a href="/Hunan/Yueyang.htm">岳阳</a></li><li><a href="/Hunan/Chenzhou.htm">郴州</a></li></ul></td></tr></table>';
