!function ($) {
$.extend({
_jsonp : {
scripts : {},
counter : 1,
charset : "gb2312",
head : document.getElementsByTagName("head")[0],
name : function (callback) {
var name = "_jsonp_" + (new Date).getTime() + "_" + this.counter;
this.counter++;
var cb = function (json) {
eval("delete " + name),
callback(json),
$._jsonp.head.removeChild($._jsonp.scripts[name]),
delete $._jsonp.scripts[name]
};
return eval(name + " = cb"),
name
},
load : function (a, b) {
var c = document.createElement("script");
c.type = "text/javascript",
c.charset = this.charset,
c.src = a,
this.head.appendChild(c),
this.scripts[b] = c
}
},
getJSONP : function (a, b) {
var c = $._jsonp.name(b),
a = a.replace(/{callback};/, c);
return $._jsonp.load(a, c),
this
}
})
}
(jQuery);
var iplocation = { "北京市": { id: "1",je:0},"天津市": { id: "2",je:0},"河北省": { id: "3",je:0},"山西省": { id: "4",je:0},"江苏省": { id: "10",je:0},"浙江省": { id: "11",je:0},"安徽省": { id: "12",je:0},"山东省": { id: "15",je:0},"河南省": { id: "16",je:0},"甘肃省": { id: "22",je:0},"四川省": { id: "28",je:0},"陕西省": { id: "23",je:0},"新 疆维吾尔自治区": { id: "24",je:0}};
var provinceCityJson = {"1":[{"id":"1","name":"北京市","je":0}],"2":[{"id":"2","name":"天津市","je":0}],"3":[{"id":"5","name":"邯郸市","je":0},{"id":"10","name":"唐山市","je":0}],"4":[{"id":"19","name":"大同市","je":0}],"10":[{"id":"63","name":"南京市","je":0}],"11":[{"id":"78","name":"杭州市","je":0}],"12":[{"id":"97","name":"阜阳市","je":0}],"15":[{"id":"125","name":"济南市","je":0},{"id":"126","name":"青岛市","je":0}],"16":[{"id":"142","name":"郑州市","je":0},{"id":"154","name":"濮阳市","je":0}],"22":[{"id":"211","name":"兰州市","je":0}],"28":[{"id":"225","name":"成都市","je":0},{"id":"228","name":"绵阳市","je":0}],"23":[{"id":"297","name":"西安市","je":0}],"24":[{"id":"340","name":"乌鲁木齐市","je":0}]};
var cName = "ipLocation";
var currentLocation = "北京";
var currentProvinceId = 1;
//根据省份ID获取名称
function getNameById(provinceId){
for(var o in iplocation){
if (iplocation[o]&&iplocation[o].id==provinceId){
return o;
}
}
return "北京";
}
var isUseServiceLoc = true; //是否默认使用服务端地址
var provinceHtml = '
';
function getAreaList(result){
var html = [""];
var longhtml = [];
var longerhtml = [];
if (result&&result.length > 0){
for (var i=0,j=result.length;i 12){
longerhtml.push("- "+result[i].name+"
");
}
else if(result[i].name.length > 5){
longhtml.push("- "+result[i].name+"
");
}
else{
html.push("- "+result[i].name+"
");
}
}
}
else{
html.push("-
");
}
html.push(longhtml.join(""));
html.push(longerhtml.join(""));
html.push("
");
return html.join("");
}
function cleanKuohao(str){
if(str&&str.indexOf("(")>0){
str = str.substring(0,str.indexOf("("));
}
if(str&&str.indexOf("(")>0){
str = str.substring(0,str.indexOf("("));
}
return str;
}
function getStockOpt(id,name){
if(currentAreaInfo.currentLevel==3){
currentAreaInfo.currentAreaId = id;
currentAreaInfo.currentAreaName = name;
if(!page_load){
currentAreaInfo.currentTownId = 0;
currentAreaInfo.currentTownName = "";
}
}
else if(currentAreaInfo.currentLevel==4){
currentAreaInfo.currentTownId = id;
currentAreaInfo.currentTownName = name;
}
//添加20140224
$('#store-selector').removeClass('hover');
//setCommonCookies(currentAreaInfo.currentProvinceId,currentLocation,currentAreaInfo.currentCityId,currentAreaInfo.currentAreaId,currentAreaInfo.currentTownId,!page_load);
if(page_load){
page_load = false;
}
//替换gSC
var address = currentAreaInfo.currentProvinceName+currentAreaInfo.currentCityName+currentAreaInfo.currentAreaName+currentAreaInfo.currentTownName;
$("#store-selector .text div").html(currentAreaInfo.currentProvinceName+cleanKuohao(currentAreaInfo.currentCityName)+cleanKuohao(currentAreaInfo.currentAreaName)+cleanKuohao(currentAreaInfo.currentTownName)).attr("title",address);
}
function getAreaListcallback(r){
currentDom.html(getAreaList(r));
if (currentAreaInfo.currentLevel >= 2){
currentDom.find("a").click(function(){
if(page_load){
page_load = false;
}
if(currentDom.attr("id")=="stock_area_item"){
currentAreaInfo.currentLevel=3;
}
else if(currentDom.attr("id")=="stock_town_item"){
currentAreaInfo.currentLevel=4;
}
getStockOpt($(this).attr("data-value"),$(this).html());
currentAreaInfo.currentJE = $(this).attr("data-je");
$("#CityList .je span").html(""+$(this).attr("data-je")+"");
});
if(page_load){ //初始化加载
currentAreaInfo.currentLevel = currentAreaInfo.currentLevel==2?3:4;
if(currentAreaInfo.currentAreaId&&new Number(currentAreaInfo.currentAreaId)>0){
getStockOpt(currentAreaInfo.currentAreaId,currentDom.find("a[data-value='"+currentAreaInfo.currentAreaId+"']").html());
}
else{
getStockOpt(currentDom.find("a").eq(0).attr("data-value"),currentDom.find("a").eq(0).html());
}
}
}
}
function chooseProvince(provinceId){
provinceContainer.hide();
currentAreaInfo.currentLevel = 1;
currentAreaInfo.currentProvinceId = provinceId;
currentAreaInfo.currentProvinceName = getNameById(provinceId);
if(!page_load){
currentAreaInfo.currentCityId = 0;
currentAreaInfo.currentCityName = "";
currentAreaInfo.currentAreaId = 0;
currentAreaInfo.currentAreaName = "";
currentAreaInfo.currentTownId = 0;
currentAreaInfo.currentTownName = "";
}
areaTabContainer.eq(0).removeClass("curr").find("em").html(currentAreaInfo.currentProvinceName);
areaTabContainer.eq(1).addClass("curr").show().find("em").html("请选择");
areaTabContainer.eq(2).hide();
areaTabContainer.eq(3).hide();
cityContainer.show();
areaContainer.hide();
townaContainer.hide();
if(provinceCityJson[""+provinceId]){
cityContainer.html(getAreaList(provinceCityJson[""+provinceId]));
cityContainer.find("a").click(function(){
if(page_load){
page_load = false;
}
$("#store-selector").unbind("mouseout");
chooseCity($(this).attr("data-value"),$(this).html());
});
if(page_load){ //初始化加载
if(currentAreaInfo.currentCityId&&new Number(currentAreaInfo.currentCityId)>0){
chooseCity(currentAreaInfo.currentCityId,cityContainer.find("a[data-value='"+currentAreaInfo.currentCityId+"']").html());
}
else{
chooseCity(cityContainer.find("a").eq(0).attr("data-value"),cityContainer.find("a").eq(0).html());
}
}
}
}
function chooseCity(cityId,cityName){
provinceContainer.hide();
cityContainer.hide();
currentAreaInfo.currentLevel = 2;
currentAreaInfo.currentCityId = cityId;
currentAreaInfo.currentCityName = cityName;
if(!page_load){
currentAreaInfo.currentAreaId = 0;
currentAreaInfo.currentAreaName = "";
currentAreaInfo.currentTownId = 0;
currentAreaInfo.currentTownName = "";
}
areaTabContainer.eq(1).removeClass("curr").find("em").html(cityName);
areaTabContainer.eq(2).addClass("curr").show().find("em").html("请选择");
areaTabContainer.eq(3).hide();
areaContainer.show().html("正在加载中,请稍候...
");
townaContainer.hide();
currentDom = areaContainer;
$.getJSONP("http://www.jia2jia.com/area/get.aspx?shopid="+$("#ShopID").val()+"&fid="+cityId+"&callback=getAreaListcallback");
}
function chooseArea(areaId,areaName){
provinceContainer.hide();
cityContainer.hide();
areaContainer.hide();
currentAreaInfo.currentLevel = 3;
currentAreaInfo.currentAreaId = areaId;
currentAreaInfo.currentAreaName = areaName;
if(!page_load){
currentAreaInfo.currentTownId = 0;
currentAreaInfo.currentTownName = "";
}
areaTabContainer.eq(2).removeClass("curr").find("em").html(areaName);
areaTabContainer.eq(3).addClass("curr").show().find("em").html("请选择");
townaContainer.show().html("正在加载中,请稍候...
");
currentDom = townaContainer;
//$.getJSONP("");
}
$("#store-selector .text").after(provinceHtml);
var areaTabContainer=$("#JD-stock .tab li");
var provinceContainer=$("#stock_province_item");
var cityContainer=$("#stock_city_item");
var areaContainer=$("#stock_area_item");
var townaContainer=$("#stock_town_item");
var currentDom = provinceContainer;
//当前地域信息
var currentAreaInfo;
//初始化当前地域信息
function CurrentAreaInfoInit(){
currentAreaInfo = {"currentLevel": 1,"currentProvinceId": 1,"currentProvinceName":"北京","currentCityId": 0,"currentCityName":"","currentAreaId": 0,"currentAreaName":"","currentTownId":0,"currentTownName":"",currentJE:0};
var ipLoc = getCookie("ipLoc-djd");
return;
ipLoc = ipLoc?ipLoc.split("-"):[1,72,0,0];
if(ipLoc.length>0&&ipLoc[0]){
currentAreaInfo.currentProvinceId = ipLoc[0];
currentAreaInfo.currentProvinceName = getNameById(ipLoc[0]);
}
if(ipLoc.length>1&&ipLoc[1]){
currentAreaInfo.currentCityId = ipLoc[1];
}
if(ipLoc.length>2&&ipLoc[2]){
currentAreaInfo.currentAreaId = ipLoc[2];
}
if(ipLoc.length>3&&ipLoc[3]){
currentAreaInfo.currentTownId = ipLoc[3];
}
}
var page_load = true;
(function(){
$("#store-selector").unbind("mouseover").bind("mouseover",function(){
$('#store-selector').addClass('hover');
$("#store-selector .content,#JD-stock").show();
}).find("dl").remove();
CurrentAreaInfoInit();
areaTabContainer.eq(0).find("a").click(function(){
areaTabContainer.removeClass("curr");
areaTabContainer.eq(0).addClass("curr").show();
provinceContainer.show();
cityContainer.hide();
areaContainer.hide();
townaContainer.hide();
areaTabContainer.eq(1).hide();
areaTabContainer.eq(2).hide();
areaTabContainer.eq(3).hide();
});
areaTabContainer.eq(1).find("a").click(function(){
areaTabContainer.removeClass("curr");
areaTabContainer.eq(1).addClass("curr").show();
provinceContainer.hide();
cityContainer.show();
areaContainer.hide();
townaContainer.hide();
areaTabContainer.eq(2).hide();
areaTabContainer.eq(3).hide();
});
areaTabContainer.eq(2).find("a").click(function(){
areaTabContainer.removeClass("curr");
areaTabContainer.eq(2).addClass("curr").show();
provinceContainer.hide();
cityContainer.hide();
areaContainer.show();
townaContainer.hide();
areaTabContainer.eq(3).hide();
});
provinceContainer.find("a").click(function() {
if(page_load){
page_load = false;
}
$("#store-selector").unbind("mouseout");
chooseProvince($(this).attr("data-value"));
}).end();
chooseProvince(currentAreaInfo.currentProvinceId);
})();
function getCookie(name) {
var start = document.cookie.indexOf(name + "=");
var len = start + name.length + 1;
if ((!start) && (name != document.cookie.substring(0, name.length))) {
return null;
}
if (start == -1) return null;
var end = document.cookie.indexOf(';', len);
if (end == -1) end = document.cookie.length;
return unescape(document.cookie.substring(len, end));
};