Подскажите, пож-та, где ошибка в коде c js у меня туго.
Текст =
"<html xmlns=""http://www.w3.org/1999/xhtml"">
| <head>
| <title>Отображение условной точки на Yandex.Maps</title>
| <!-- Загружаем API-->
| <script src=""http://api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"" type=""text/javascript""></script>
| <script type=""text/javascript"">
| // При успешной загрузке API выполняется соответствующая функция
| ymaps.ready(init);
| var myMap
| function init()
| {
| var myMap = new ymaps.Map(""YMapsID"", // Создание экземпляра карты и его привязка к контейнеру с id=""YMapsID""
| {
| center: ["+Широта2+", "+Долгота2+"], zoom: "+Масштаб2+", type: ""yandex#map""
| });
| myMap.behaviors.enable('scrollZoom'); // Включаем масштабирование мышью
| myMap.container.fitToViewport(); // Вписываем карту в размер контейнера
| myMap.controls.add(""mapTools""); // Добавление стандартного набора кнопок
| myMap.controls.add(""zoomControl""); // Добавление кнопки изменения масштаба
| myMap.controls.add(""typeSelector""); // Добавление списка типов карты
| }; //1 ymaps.ready
|
| function retTo1C(myMap)
| {
| var CenterC = myMap.getCenter();
| var myCars = new Array(myMap.getZoom(),CenterC[0],CenterC[1]);
| return myCars;
| }
|
| </script>
| </head>
|<body>
| <div id=""YMapsID"" style=""width:"+Строка(Размеры.Ширина)+"px; height:"+Строка(Размеры.Высота)+"px""></div>
|</body>
|</html>";
Задача выполнить из 1С функцию retTo1C(myMap)
Взял код из демо-примера:
Процедура Кнопка1Нажатие(Элемент)
Попытка
ОтветJS = ЭлементыФормы.КартыYandex.Документ.parentWindow.eval("retTo1C(myMap)");
счетчик = 1;
Попытка
Zoom = ОтветJS["0"];
Lat = ОтветJS["1"];
Lng = ОтветJS["2"];
Исключение
Для каждого Рез из ОтветJS цикл
Если счетчик = 1 тогда
Zoom = Рез;
ИначеЕсли счетчик = 2 тогда
Lat = Рез;
Иначе
Lng = Рез;
КонецЕсли;
счетчик = счетчик + 1;
КонецЦикла;
КонецПопытки;
Исключение
Сообщить("Ошибка получения данных от яндекса");
КонецПопытки;
КонецПроцедуры
Ругается, в строке
var CenterC = myMap.getCenter();
Пишет, что myMap = NULL и нет у него метода getCenter()
MyMap - объявлена как глобальная, не пойму, что еще надо )))
Текст =
"<html xmlns=""http://www.w3.org/1999/xhtml"">
| <head>
| <title>Отображение условной точки на Yandex.Maps</title>
| <!-- Загружаем API-->
| <script src=""http://api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"" type=""text/javascript""></script>
| <script type=""text/javascript"">
| // При успешной загрузке API выполняется соответствующая функция
| ymaps.ready(init);
| var myMap
| function init()
| {
| var myMap = new ymaps.Map(""YMapsID"", // Создание экземпляра карты и его привязка к контейнеру с id=""YMapsID""
| {
| center: ["+Широта2+", "+Долгота2+"], zoom: "+Масштаб2+", type: ""yandex#map""
| });
| myMap.behaviors.enable('scrollZoom'); // Включаем масштабирование мышью
| myMap.container.fitToViewport(); // Вписываем карту в размер контейнера
| myMap.controls.add(""mapTools""); // Добавление стандартного набора кнопок
| myMap.controls.add(""zoomControl""); // Добавление кнопки изменения масштаба
| myMap.controls.add(""typeSelector""); // Добавление списка типов карты
| }; //1 ymaps.ready
|
| function retTo1C(myMap)
| {
| var CenterC = myMap.getCenter();
| var myCars = new Array(myMap.getZoom(),CenterC[0],CenterC[1]);
| return myCars;
| }
|
| </script>
| </head>
|<body>
| <div id=""YMapsID"" style=""width:"+Строка(Размеры.Ширина)+"px; height:"+Строка(Размеры.Высота)+"px""></div>
|</body>
|</html>";
Задача выполнить из 1С функцию retTo1C(myMap)
Взял код из демо-примера:
Процедура Кнопка1Нажатие(Элемент)
Попытка
ОтветJS = ЭлементыФормы.КартыYandex.Документ.parentWindow.eval("retTo1C(myMap)");
счетчик = 1;
Попытка
Zoom = ОтветJS["0"];
Lat = ОтветJS["1"];
Lng = ОтветJS["2"];
Исключение
Для каждого Рез из ОтветJS цикл
Если счетчик = 1 тогда
Zoom = Рез;
ИначеЕсли счетчик = 2 тогда
Lat = Рез;
Иначе
Lng = Рез;
КонецЕсли;
счетчик = счетчик + 1;
КонецЦикла;
КонецПопытки;
Исключение
Сообщить("Ошибка получения данных от яндекса");
КонецПопытки;
КонецПроцедуры
Ругается, в строке
var CenterC = myMap.getCenter();
Пишет, что myMap = NULL и нет у него метода getCenter()
MyMap - объявлена как глобальная, не пойму, что еще надо )))
По теме из базы знаний
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот