limpopo1992
@limpopo1992

Яндекс API Не создается карта?

Доброе время суток!

Проблема в следующем:

Есть некий див

<div id="rez" style="width:1000px;height:1000px">Тут будет наша замечательная карта
</div>


Он отрисовывается на странице при ее загрузке

Далее идет форма, поля которой пользователь заполняет и жмякает на кнопку, далее это событие подхватывает функция, которая передает значения полей в пхп скрипт, далее принимает ответ из скрипта и вставляет его в наш див.
Содержимое ответа пхп-скрипта:

function one(){
var myMap = new ymaps.Map("map", {
        center: [55.76, 37.64],
        zoom: 10
    }); 
    
  //myGeoObject = new ymaps.GeoObject({
        //geometry: {
           // type: "Point",// тип геометрии - точка
           // coordinates: [jsondata.w,jsondata.l] // координаты точки
       //}
   // })
    //i = i+1;
    
//myMap.geoObjects.add(myGeoObject); // Размещение геообъекта на карте.
}
one();


В итоге имею вот такую штуку в консоле: Uncaught TypeError: Cannot read property 'offsetWidth' of null
Т.е. получаю это по результату отработки скрипта.

P.S. Библиотеки яндекс карт подключены
Что делать? Изломал всю голову.
  • Вопрос задан
  • 7803 просмотра
Решения вопроса 1
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Жесть какая-то с логикой...

1. Все функции заранее написаны и скрипт с ними загружен изначально.
2. Пользователь нажимает на кнопку и получает данные (безусловно, лучше в JSON).
3. Эти данные (координаты etc.) передаются в функцию и она использует их для инициализации карты.
4. Если карта уже создана, а на кнопку можно нажать ещё раз, можно либо заново пересоздать её, либо скорректировать текущую.

В блок, предназначенный судьбой быть контейнером для карты, ничего вставлять не надо.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 16:53
1000 руб./за проект
19 апр. 2024, в 16:45
5000 руб./за проект
19 апр. 2024, в 16:22
30000 руб./за проект