Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   добавить элемент на карту (https://javascript.ru/forum/dom-window/55703-dobavit-ehlement-na-kartu.html)

TomTykver 11.05.2015 10:20

добавить элемент на карту
 
Добрый день. Подскажите, пожалуйста: вывожу на экран карту яндекс
<div id="map"> </div>

в js определяю переменную myMap
var myMap = new ymaps.Map('map', {
                    center: [50.3443, 30.5025],
                    zoom: 14
                });

В ходе работы программы хочу добавить элемент на карту
myMap.geoObjects.add(polyline);

разумеется ошибка: переменная myMap не определена.
Подскажите каким образом получить доступ к myMap ? Делаю так:
myMap = document.getElementById('map'); - ошибка. Почему ? Как обратиться к карте что бы добавить элемент ?

Leon-on12 11.05.2015 23:22

Скорее всего карта яндекса находится в теге
<iframe>

Это специальный тег, внутрь которого не пробиться, хоть к элементу, хоть у функции js.
Даже глобальным переменным не удаётся выбраться за пределы фрейма, а Вы хотите вызвать целую функцию, задав ей ещё и параметр.

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

Сообщение от TomTykver
myMap = document.getElementById('map'); - ошибка. Почему ?

Приобретает куда более глубокий смысл: document.getElementById('map') - не найден, Почему?
А ответ напрашивается сам, так как такого элемента нет на странице. А объяснение этого факта заключается в том что всё что находиться внутри тега <iframe> не является частью страницы, а являются отдельной страницей подгружаемой извне.


Часовой пояс GMT +3, время: 11:03.