当用户调整地图时,我会在Cookie中保存Google Map API设置的缩放和位置。当他们回来时,地图就在同一个地方。该功能大部分时间都有效:
var h = JSON.stringify(map.getCenter(), null, 2);
jQuery.cookies.set("YD44635center",h,cookieOptions);
在解码端使用:
locationVar = jQuery.cookies.get("YD44635center");
var temp = "";
// for testing:
for(var x in locationVar){
temp += x + "\n";
}
alert(temp);
在大多数情况下,看到我得到的是:
Qa;
Pa;
所以我设置我的代码来加载带有这些变量的地图,一切都很好。后来有一天 页面停止工作,返回的参数不再像Qa那样有“Q”,而是像Oa中的“O”。所以我改变了代码,它工作了一天,然后Google发送的内容改回了Qa。我改回来了。
时间流逝。现在,代码开始间歇性地工作,我把调试的东西放回来,而现在而不是“Pa”在第二个变量上我得到“Ra”。不是持续但主要是。这是怎么回事。它以相同的方式在两个不同的浏览器上发生。
答案 0 :(得分:23)
使用API函数并保存所需的数据,而不是结构
var c = map.getCenter();
jQuery.cookies.set("YD44635center", c.lat() + ','
+ c.lng() + ',' + map.getZoom(),
cookieOptions);
并将其读作
var temp = jQuery.cookies.get("YD44635center").split(',');
Google正在不时更改内部变量的名称 Error on Latitude and Longitude - Google Maps API JS 3.0