Функция API Карт Google map.getCenter () - PullRequest
10 голосов
/ 15 февраля 2012

Я сохраняю масштаб и расположение параметра API Google Map в файлах cookie, когда пользователь настраивает свою карту.Когда они возвращаются, карта находится там же.Функция работает большую часть времени:

   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;

Итак, я установил свой код для загрузки карты с этими переменными, и все в порядке.Затем однажды страница перестает работать, и возвращенные параметры больше не имеют "Q", как в Qa, а "O", как в Oa.Поэтому я изменил код, и он работал в течение дня, а затем то, что отправлял Google, вернулось в Qa.Я изменил его обратно.

Время идет.Теперь сегодня код начинает работать с перебоями, и я помещаю эту отладочную вещь обратно, и теперь вместо «Pa» для второй переменной я получаю «Ra».Не постоянно, но в основном.Что происходит.Это происходит в двух разных браузерах одинаково.

1 Ответ

23 голосов
/ 15 февраля 2012

Используйте функции API и сохраняйте необходимые данные, а не структуру

var c = map.getCenter();
jQuery.cookies.set("YD44635center", c.lat() + ',' 
                                  + c.lng() + ',' + map.getZoom(), 
                                                     cookieOptions);

и прочитайте его как

var temp = jQuery.cookies.get("YD44635center").split(',');

Google время от времени меняет имена внутренних переменных Ошибка по широте и долготе - Google Maps API JS 3.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...