Яндекс-карты: примеры работы с API 2.0

Опубликовал Yashazz в раздел Обмен - Интеграция с WEB

Несколько простых примеров работы с Yandex-картами в версии API 2.0. Самые элементарные действия. Прокладка маршрутов. Прямое геокодирование. Принципиально другой подход к работе с объектом карты.

 

Не вдаваясь в теории, совсем кратко опишу отличия: Почти все публикации на ИС, касающиеся работы с Яндекс-картами, основаны на использовании API 1.X, для которой требуется ключ доступа и которая, по нынешним меркам и утверждениям самих разработчиков, устарела. Поэтому за основу я взял актуальную версию 2.0, к тому же не требующую никаких ключей и регистраций, обладающую гораздо более широкими возможностями. Кроме того, представлен другой подход к работе с самой картой. Ранее представленные механизмы были основаны на принципе создания html-текста, который сразу формировался с учётом всех потребностей и, таким образом, для изменения поведения карты требовалось новое формирование этого исходного текста и перезагрузка его в окно встроенного браузера. Это более времяёмко и ресурсоёмко, громоздко и менее гибко. Я заложил в текст исходного html-текста только самые основные параметры-шаблоны (хотя и это может быть универсализировано), а функционал основан на заложенных в тексте js-функциях, которые по мере надобности вызываются из контекста клиента 1С.

Напоминаю, что, согласно Пользовательскому соглашению (http://legal.yandex.ru/maps_api/) и конкретно п.2.3.2, промышленное использование Yandex API в 1С фактически запрещено, и поэтому позиционирую публикацию как примеры для ознакомления, и не более того.

Примеры сведены в обработку, позволяющую наглядно ознакомиться с несколькими простейшими операциями в картах Яндекс. Просьба особо не плюсить, т.к. уровень знания javascript у меня ниже плинтуса, а именно он требуется для задачи в первую очередь. Вопросы, пожелания и замечания приветствуются - будет интересно "выжать" из такого подхода максимум. 

UPD: добавил отслеживание событий с относительно управлямой подпиской на них. Всё очень грубо и без использования нормальных возможностей коллекции events на стороне js. Действие показано на примере определения координат места, куда щёлкнул пользователь. Ещё добавил кнопку удаления (скрытия) баллунов и меток.

UPD: добавил прямое геокодирование. Всё-таки захотелось сделать нормальное синхронное множественное геокодирование, по списку строковых адресов получаем их координаты.

UPD: добавлено создание многоугольников, в т.ч. с изменяемой геометрией (включённым режимом редактирования), заодно приведён пример конвертации цвета из RGB в Hex, чего сама 1С не умеет.

 

 

 

 

 

Файлы

Наименование Файл Версия Размер Кол. Скачив.
Яндекс_Карты_API20
.epf 29,51Kb
19.03.14
910
.epf 29,51Kb 910 Бесплатно

См. также

Лучшие комментарии

31. ak0710 (файл скачал) 02.04.2013 14:57
(30) ak0710, я решил проблему, требовалось записать сначала во временный файл весь документ , потом из поле хтмл документа воспользоваться методом перейти, ошибка не появляется
+ 1 [ Yashazz; ]
# Ответить
6. Yashazz 06.12.2012 13:48
(1) Чем же "ужасный"? Отсутствием пробелов? :) И если не секрет, что поражает в названиях? :)
(2) Попробую завтра выслать.
(3) Массив передавать не пробовал; в качестве грубого решения могу посоветовать сделать функцию, в которую передаётся по 1 аргументу, вызвать сколько надо раз, а массив пусть сразу рождается на стороне js.
(4) Не поверите, я все имеющиеся обработки ИС внимательно посмотрел. :) Правда, уже после своей публикации наткнулся-таки на один случай, клиентская карта на API 2.0, а остальное всё старьё, причём, что забавно, почти все "навороченные" разработки базируются на http://infostart.ru/public/98156/ (перекопипащивалось всё, вплоть до опечаток).
+ 1 [ chemezov; ]
# Ответить
18. Yashazz 22.12.2012 21:20
(17) Да, элементарно. В исходном js-коде (макет "Исходный код") поменяйте параметр "draggable" в функциях AddSimplePoint, AddTextPoint (ну и вообще, где надо) - вместо draggable: true надо, соответственно, draggable: false. И всё.
+ 1 [ elit; ]
# Ответить

Комментарии

1. Al-77 (файл скачал) 05.12.2012 11:38
Ужасный синтаксис. Название переменных вообще поражают. А за все остальное большое спасибо.
Ответили: (6) (9)
# Ответить
3. Al-77 (файл скачал) 05.12.2012 17:14
Не подскажите . я смотрю вы передаете com объекты. попытался передать массив у меня не чего не вышло. не подскажите как быть?
Ответили: (6) (9)
# Ответить
4. CagoBHuK 06.12.2012 09:54
http://infostart.ru/public/90737/ - правда на Гугле.
Ответили: (5) (6)
# Ответить
5. mzelensky 06.12.2012 11:25
(4) так она платная :(
# Ответить
6. Yashazz 06.12.2012 13:48
(1) Чем же "ужасный"? Отсутствием пробелов? :) И если не секрет, что поражает в названиях? :)
(2) Попробую завтра выслать.
(3) Массив передавать не пробовал; в качестве грубого решения могу посоветовать сделать функцию, в которую передаётся по 1 аргументу, вызвать сколько надо раз, а массив пусть сразу рождается на стороне js.
(4) Не поверите, я все имеющиеся обработки ИС внимательно посмотрел. :) Правда, уже после своей публикации наткнулся-таки на один случай, клиентская карта на API 2.0, а остальное всё старьё, причём, что забавно, почти все "навороченные" разработки базируются на http://infostart.ru/public/98156/ (перекопипащивалось всё, вплоть до опечаток).
+ 1 [ chemezov; ]
# Ответить
7. mzelensky 06.12.2012 14:07
я довльно много обработок с картами перебрал, но нужного решения так и не нашел. Мне нужно чтобы пользователь ткнул в карту (грубо говоря метку поставил), а ему (в какой-то реквизит обработки) вернулся АДРЕС этой точки.
Ответили: (8) (11) (60)
# Ответить
8. Yashazz 06.12.2012 18:17
(7) Могу завтра сделать.
# Ответить
9. Al-77 (файл скачал) 06.12.2012 21:47
(1) Я не хочу продолжать спор. я возьму свои слова обратно.

(3) Я из 1С передаю массив для построение полигона, к сожалению так и не смог его обработать на стороне явы, не хочет перебираться. Пришлось передовать строку и парсить ее. Почти переписал свою обработку на новый подход, очень порадовал меня, еще раз большое спасибо за пример.
Ответили: (11)
# Ответить
10. Fenicss 07.12.2012 13:04
Очень удобная вещь для отслеживания торговых
# Ответить
11. Yashazz 09.12.2012 11:12
(7) Сделал. Надо включить отслеживание событий, потом по факту эти события перехватываются и читаются координаты. Грубо, конечно, надо бы через events на стороне скрипта.

(9) Я бы сделал так: сначала myArray=[]; потом function AddToArray(myArray,myElement) {myArray[myArray.length]=myElement} и дёргал эту функцию бы в цикле со стороны 1С. А потом перебрал бы так: for(var i in myArray) {// некое действие с элементом myArray[i]}
Или, посмотрите, как я компоную объект (это в данном случае почти как и для массива), передаваемый к прокладке маршрута - делаю строку и исполняю на js функцией eval.
Ответили: (12) (34)
# Ответить
12. mzelensky 10.12.2012 10:12
(11) Скинь сюда плиз: zel_maks@mail.ru
# Ответить
13. Yashazz 17.12.2012 14:36
Всё-таки не удержался, добавил множественное прямое геокодирование. Просто как пример, как можно извратными средствами обработать асинхронные вызовы js promise. Надеюсь, кому-нибудь пригодится.
# Ответить
14. yandextesting 18.12.2012 10:41
возможно ли организовать прокладку маршрута для пешехода? и получить примерную длину этого маршрута и время его прохождения?
Ответили: (15)
# Ответить
15. Yashazz 19.12.2012 01:17
(14) Насколько знаю, специализированной прокладки маршрутов для пешеходов Яндекс-карты не делали. Единственное, что они советуют, процитирую: "Однако, время = расстояние / скорость. Расстояние между двумя точками Вы можете узнать с помощью метода distance() класса YMaps.GeoPoint." - т.е. можно задействовать ту же механику, но с меньшей скоростью. Может быть, этот вариант подойдёт?
Ответили: (16)
# Ответить
16. yandextesting 19.12.2012 09:50
(15) такой вариант вряд ли подойдет - пешеход все же по дорогам (тротуарам) ходит, а не сквозь дома, если брать расстояние напрямую:) , да и не по автомобильному маршруту он пойдет, а закоулками-переулками без учета "кирпичей" и "встречки"... Спасибо за ответ.
# Ответить
17. elit (файл скачал) 22.12.2012 14:01
А можно как то реализовать что бы балуны нельзя было двигать мышкой!? Спасибо!
Ответили: (18)
# Ответить
18. Yashazz 22.12.2012 21:20
(17) Да, элементарно. В исходном js-коде (макет "Исходный код") поменяйте параметр "draggable" в функциях AddSimplePoint, AddTextPoint (ну и вообще, где надо) - вместо draggable: true надо, соответственно, draggable: false. И всё.
+ 1 [ elit; ]
# Ответить
19. elit (файл скачал) 23.12.2012 20:59
Подскажите пожалуйста как сделать процедуру/функцию удаления всех меткиБалунов с карты (очистить карту)? Спасибо
Ответили: (20)
# Ответить
20. Yashazz 24.12.2012 18:16
(19) Тут по-разному можно. Если это именно баллун - тогда через метод Hide (он в обработке есть), а если это метки - можно сбросить им свойство Visible. Если они добавлены в коллекцию показываемых геообъектов - их можно удалить оттуда через map.geoObjects.Remove(myMark). Это я вроде тоже сделал, нэ?
Не уверен, сработает ли в браузере 1С такой код: map.geoObjects.each(function(gOb) {gOb.Visible=false}), но можно попробовать. Разумеется, с проверкой, является ли "gOb" меткой, а то можно всякие другие объекты карты заодно зацепить).
# Ответить
21. elit (файл скачал) 28.12.2012 16:25
Спасибо !
# Ответить
22. vladzem 06.01.2013 15:47
Просьба выслать обработку Яндекс-карты: примеры работы с API 2.0 на адрес prog@sirobogatov.ru
# Ответить
23. Sheff (файл скачал) 09.01.2013 09:26
Я бы сделал так: сначала myArray=[]; потом function AddToArray(myArray,myElement) {myArray[myArray.length]=myElement} и дёргал эту функцию бы в цикле со стороны 1С. А потом перебрал бы так: for(var i in myArray) {// некое действие с элементом myArray[i]}

Значит "напрямую" всётаки нельзя передать массив?
# Ответить
24. vik123 10.01.2013 17:49
Добрый день! Не могу скачать Вашу обработку... Но очень хочется посмотреть))) Можете поделиться?
vik-k@mail.ru
Ответили: (27)
# Ответить
25. elit (файл скачал) 14.01.2013 12:32
Ещё не хватает функции удаления маршрута/маршрутов. Может добавите?
Ответили: (27)
# Ответить
26. gep 19.03.2013 11:23
Вопрос ко всем - а как с печатью? Сделал подобное, но мне нужно еще и распечатывать результат. Может у кого есть наработки?
Ответили: (27)
# Ответить
27. Yashazz 20.03.2013 17:57
(24) Не помню, отправлял Вам или нет?
(25) Посмотрим. Будет свободная минутка - добавлю.
(26) А что мешает распечатать прямо сам HTML-документ? Или, выдрать из него нужный элемент, загнать в отдельно сделанный хтмл, да и на печать?
Ответили: (28)
# Ответить
28. gep 21.03.2013 14:54
(27) Yashazz, Ну как бы... Вы пробовали? Именно на 2-м апи? У меня печатается только слова "Яндекс Лицензионное соглашение", а самой карты нет. Если делать на апи 1.х то все нормально печатается.
Выдрать картинку-слой самой карты. Ну наверное да - можно. Но меток на ней не будет. Они в дрогом слое. И это торгда сводить вместе как-то. Наверное возможно (Точно возможно ведь на самих ЯК печать есть), но как и насколько просто ...
Ответили: (29)
# Ответить
29. Yashazz 22.03.2013 13:18
(28) Упс, я как раз на 1.Х пробовал печатать. Мдя, надо подумать. Интересная задачка, покопаюсь.
Ответили: (45)
# Ответить
30. ak0710 (файл скачал) 02.04.2013 13:30
Добрый День! , у меня на карте такая ошибка выходит, скачал вашу у вас тоже также, никак не могу разобраться , записываю код html и открываю его в хроме , или ИЕ все работает нормально , а ПолеHTMLДокумента нет
Ответили: (31)

Прикрепленные файлы:

Ошибка.jpg
# Ответить
31. ak0710 (файл скачал) 02.04.2013 14:57
(30) ak0710, я решил проблему, требовалось записать сначала во временный файл весь документ , потом из поле хтмл документа воспользоваться методом перейти, ошибка не появляется
+ 1 [ Yashazz; ]
# Ответить
32. vadimlp77 (файл скачал) 08.04.2013 07:38
Подксажите, пожалуйста, к ак передать паарметры, а именно координаты вершин многоугольника в функцию из 1С: "ЭлементыФормы.ПолеКарты.Документ.parentWindow.CreateAnyPolygon(рКарта,стрГеокодировать,рЦветФона,рЦветРамки,рТолщина);"
я передаю строку типа "[[[50.01, 30.01],[50.20, 30.20],[50.01, 30.01]]]" - ничего не происходит, многоугольник не рисуется, а если такую же строку прописываю жестко в html коде:
myGeometry = {
type: 'Polygon',
coordinates: [[[50.01, 30.01],[50.20, 30.20],[50.01, 30.01]]]
},
- всё работает.
Что передавать в качестве параметра (вершины многоугольника) из 1с ????
# Ответить
33. Mudrii_Gankster (файл скачал) 10.04.2013 13:56
Добрый день друзья,подскажите, можно ли добавить метки на карту и произвести масштабирование таким образом, чтобы все метки попали в область видимость. Перерыв яндекс апи но не нашел информации.
Ответили: (35)
# Ответить
34. Kuklachel 29.04.2013 10:53
(11) Yashazz, Добрый день. Уважаемый Yashazz, не могли бы Вы скинуть свою обработку на lou-bega@list.ru Заранее благодарю.
# Ответить
35. ak0710 (файл скачал) 10.05.2013 21:04
(33) Mudrii_Gankster, можно попробовать сначала найти центр всех меток , среднюю долготу и широту, а далее расстояние между крайними метками вычислить , потом в зависимости от расстояния этих меток устанавливать маштаб
# Ответить
36. Sweetlane (файл скачал) 17.05.2013 10:10
Yashazz, Добрый день. Можно взглянуть на вашу работу? sv-k@live.ru Заранее большое спасибо.
Ответили: (38)
# Ответить
37. shevelkin 28.05.2013 16:34
Yashazz, буду очень признателен, если Вы скинете обработку на shevelkin@pisem.net
# Ответить
38. Yashazz 28.05.2013 18:01
(36) Так вам скидывать или нет? Файл, судя по надписи, Вы уже скачали.
# Ответить
39. KillHunter 28.05.2013 20:44
классная публикация, давно хотел чтото такое увязать :)
# Ответить
40. Vanch90 10.07.2013 09:28
для 8.1 есть?
Ответили: (42)
# Ответить
41. MICK77 (файл скачал) 10.07.2013 10:46
А возможно ли выводить несколько карт на печатный лист по примеру вот этой разработки?
т.е несколько адресов -> сотвественно выводится несколько кусков карты с точками адресов.
# Ответить
42. Yashazz 14.07.2013 16:08
(40) Это элементарно даунгрейдится в 8.1, просто копипастом всего и вся. Всё должно работать.
# Ответить
43. OrsoBear 26.07.2013 08:50
Спасибо, как раз начал осваивать эту сферу.
Для разбора примеров самое оно!
# Ответить
44. Algiz 16.10.2013 23:21
Как прокладывается маршрут между 3 и более точками?
Ответили: (45)
# Ответить
45. Yashazz 18.10.2013 11:00
(44) В каком смысле? Точки, между которыми должен быть маршрут, вносятся в таблицу значений, и от порядка в этой таблице всё и зависит. От первой ко второй, далее к третьей итд. А если вы о математико-графической модели, лучше у самих яндексовцев спросить.

(29) С печатью - кирдык. В API её как таковой нет, разработчики Яндекса честно признаются, что и свою-то штатную печать делали весьма тяжко и извратно, и что готовых решений нет. Скидывать всё в static API, разве что.
Для себя сделал грубо, просто, но с нарушением лицензионного соглашения (ну, для эксперимента-то можно) - я банально вывожу карту в её текущем состоянии на форму, с которой программно лепится скриншот, и дальше в mxl и айда. Другие пути ещё более кривые.
Ответили: (46)
# Ответить
46. Algiz 18.10.2013 13:51
(45) Т.е. маршрут строиться по порядку из таблицы. Никакой отптимальности нету, я так понимаю? Просто сейчас работаю над этим, и было бы интересно посмотреть что-то про оптимально-построенный маршрут.
Ответили: (47)
# Ответить
47. Yashazz 18.10.2013 17:53
(46) А, вы в смысле оптимальности путей между точками, как вершинами графа? Это уже "задача коммивояжёра", что не было предметом публикации. Поищите решения этой задачи для случаев оптимизации расстояния, повторых посещений и прочая.
# Ответить
48. Aspirant 30.10.2013 14:35
Можно ли выделить несколько флажков и передать в 1С их координаты (лучше адрес дома)?
Вышлите пожалуйста на magefred@mail.ru обработку, очень хочется ее потестить
Ответили: (49)
# Ответить
49. Yashazz 30.10.2013 18:04
(48) Не совсем понял, как "выделить". Каким образом флажки появились на карте изначально?
# Ответить
50. Aspirant 30.10.2013 19:15
Из 1с построили их
# Ответить
51. Yashazz 31.10.2013 11:00
В смысле, было геокодирование? Тогда читаются результаты этого геокодирования из массива, и всё. Я не морочился с жёсткой идентификацией, поэтому точки-метки идут строго по порядку, по какому геокодировались.
# Ответить
52. Aspirant 31.10.2013 11:47
Из 1с строятся флажки на карте по нескольким адресам.
В первую очередь интересует можно ли получить от карты адреса по выделенным флажками домам:
Сначала к примеру отправляем список с 10 – адресами, на карте должны появиться флажки по этим адресам,
затем мышкой выделяем 4 флажка и нужно получить обратно от карты адреса этих выделенных флажков.
# Ответить
53. OrsoBear 15.01.2014 08:13
Та же проблема, решений на форуме больше, чем баллов, как доберу, скачаю.
А так очень полезная разработка.
Как уже кто-то заметил, на основе Вашего творения появились новые примеры, с теми же ошибками и той же стилистикой оформления :-)
Ответили: (54)
# Ответить
54. Yashazz 19.01.2014 14:00
(53) Ошибки на бочку, прям сюда. Бум исправлять!
# Ответить
55. plastilin (файл скачал) 28.01.2014 17:31
Есть возможность определения административных округов Москвы?
Ответили: (56) (58) (59) (60)
# Ответить
56. Yashazz 28.01.2014 23:51
(55) А у самого-то Яндекса такая возможность есть? Если они её в API запихнули, то, думаю, можно, а иначе - вряд ли.

Ну так что, есть зафиксированные баги? С удовольствием исправлю, мне ещё эту механику самому юзать )))
# Ответить
57. Светлый ум 29.01.2014 07:23
Почему в маршруте балуны не подписаны: 1,2,3 - хотя бы. Я к тому, что нарисовать маршрут это одно, а проиндексировать точки это по труднее будет.
В обработке есть индексация точек маршрута?
Ответили: (61)
# Ответить
58. BenGunn (файл скачал) 29.01.2014 10:46
(55) plastilin, У яндекса есть сервис "Регионы". Но сервис базируется на OpenStreetMap и предоставляют доступ только к регионом стран (Россия, Украина и т.п.).
# Ответить
59. BenGunn (файл скачал) 29.01.2014 11:17
(30) В html добавляете:

<sc ript src="http://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU" type="text/javascript"></sc ript>

<sc ript type="text/javascript">
  
  function errorHandler(msg){return true;}
  window.on error=errorHandler;
  ....
  ваш код
  ....

</sc ript>
...Показать Скрыть


***) Работает фильтр javascript'ов чтобы исключить XSS атаки (так мне сказали в техподдержке), поэтому "критичные слова" разбиты на части. Так, "sc ript" - это "script", "window.on error" - это "window.onerror".
# Ответить
60. BenGunn (файл скачал) 29.01.2014 11:52
Автору спасибо за идею. Продолжил работу с API2. Вот мой пример.

(7) С опозданием, конечно... Здесь вопрос "кликнул по карте - получил адрес" решен
# Ответить
61. Yashazz 29.01.2014 15:42
(57) В какой-то из своих узкоспециальных обработок на основе этой - да, есть. Странно, что в выложенной версии ещё нету, упустил, видать. Но там можно просто по порядку, или в eval передавать ещё массив надписей к баллунам, и тогда по его индексу будет брать в цикле нужное название.

А вообще, что-то мне Гугл-карты в последнее время нравятся больше. Геокодирование у них однозначнее. У Яндекса ведь как - задаёшь ему "улица Пупыркина, дом.666", он не-пойми-куда ставит маркер. Последний раз вообще в Баварию куда-то уехал, я еле нашёл. А у Гугла в этом случае ставит в геоцентр населённого пункта, в случае Мск это Кремль с чётко заданными координатами. Хоть можно понять, что геокодинг не удался.
# Ответить
62. Osiris_ 31.01.2014 10:23
Спасибо. Очень интересно.
# Ответить
63. maxx (файл скачал) 06.02.2014 15:02
Подскажите, а можно ли на карте выделить зону(прямогольник) или провести отрезки (маршрут) и затем получить координаты этих точек?
# Ответить
64. KillHunter 06.02.2014 18:20
можно через яндекс карты на ява скрипте:
ymaps.ready(init);
var myMap, myGeoObject, myRectangle;

function init () {
myMap = new ymaps.Map('map', {
center: [55.674, 37.601],
zoom: 11
});

// Cоздаем геообъект с типом геометрии "прямоугольник".
myGeoObject = new ymaps.GeoObject({
// Геометрия = тип геометрии + координаты геообъекта.
geometry: {
// Тип геометрии - прямоугольник.
type: 'Rectangle',
// Координаты.
coordinates: [
[55.665, 37.66],
[55.64, 37.53]
]
},
// Свойства.
properties: {
hintContent: 'Перетащи меня!',
balloonContent: 'Прямоугольник 2'
}
}, {
// Опции.
// Объект можно перетаскивать.
draggable: true,
// Цвет и прозрачность заливки.
fillColor: '#ffff0022',
// Цвет и прозрачность границ.
strokeColor: '#3caa3c88',
// Ширина линии.
strokeWidth: 7
});

// Создаем прямоугольник с помощью вспомогательного класса.
myRectangle = new ymaps.Rectangle([
// Задаем координаты диагональных углов прямоугольника.
[55.66, 37.60],
[55.71, 37.69]
], {
//Свойства
hintContent: 'Меня перетаскивать нельзя!',
balloonContent: 'Прямоугольник 1'
}, {
// Опции.
// Цвет и прозрачность заливки.
fillColor: '#7df9ff33',
// Дополнительная прозрачность заливки..
// Итоговая прозрачность будет не #33(0.2), а 0.1(0.2*0.5).
fillOpacity: 0.5,
// Цвет обводки.
strokeColor: '#0000FF',
// Прозрачность обводки.
strokeOpacity: 0.5,
// Ширина линии.
strokeWidth: 2,
// Радиус скругления углов.
// Данная опция принимается только прямоугольником.
borderRadius: 6
});

myMap.geoObjects
.add(myRectangle)
.add(myGeoObject);
}
# Ответить
65. Al-77 (файл скачал) 10.02.2014 16:04
Не кто не догнал как сделать растягивания карты при растягивании формы?
Ответили: (66)
# Ответить
66. Yashazz 10.02.2014 16:25
(65) Растягивание - в смысле, увеличение размеров рабочего окна? Наверное, можно менять свойства этого контейнера при каком-либо событии от 1С...
Ответили: (67)
# Ответить
67. Al-77 (файл скачал) 11.02.2014 12:42
(66) Yashazz, Да именно. пробовал но, что то у меня не вышло. буду пробовать дальше. где то читал не у одного меня такая проблема.
# Ответить
68. BenGunn (файл скачал) 26.02.2014 15:48
<!DO CTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ht ml xmlns="http://www.w3.org/1999/xhtml">
<head>

Здесь твои скрипты по карте......

<st yle type="text/css">
    html, body{
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
    }
	body{-moz-user-select:none;}
</style>
	
</head>
	
<body scroll="no">
	<div id="map" style="width:100%;height:100%;"></div>
</body>

</html>
...Показать Скрыть


Срабатывает защита.... уточняю:
....scroll="no"
....style="width:100%;height:100%;"
# Ответить
69. KillHunter 02.03.2014 10:27
Яндекс карты всем устариюват, один минус существенный есть, в небольших населенных пунктах с улицами и домами не работает маршрутизация в отличие от того НАВИТЕЛ например а так все наглядно и прекрасно работает.
# Ответить
70. Vanch90 31.03.2014 12:22
у меня так и не заработало нормально
# Ответить
71. Vanch90 23.04.2014 14:24
Ну так что?
Ответили: (72)
# Ответить
72. Sheff (файл скачал) 05.05.2014 14:09
(71) Vanch90, ну так что что?
# Ответить
73. Rustavelli 06.07.2014 23:49
Здравствуйте! помогите с проблемой, не растягивается иконка метки, что в скрипте не так?


<!DOCTYPE html>
<html >
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<script src="http://api-maps.yandex.ru/2.1-dev/?lang=ru-RU&load=package.full"" type=""text/javascript"></script>
<script type="text/javascript">

//убираем глюк встроенного в платформу браузера: ошибка сценария Script error при повторном отрытии окна
window.onerror = myOnError;
function myOnError(msg, url, lno) {return true}

var myMap;
ymaps.ready(function ()
{
myMap = new ymaps.Map('YMapsID',
{
center:[//Здесь добавим текущие координаты],
zoom:12,
controls: ['geolocationControl', 'typeSelector', 'trafficControl']
});

myPlacemark0 = new ymaps.Placemark(
[41.26954, 69.366503],
{iconContent: '18:37'},
{preset: 'twirl#redStretchyIcon'});
myMap.geoObjects.add(myPlacemark0);

});

</script>

<style type="text/css">
html, body {
width: 100%;
height: 100%;
}
</style>

</head>
<body>
<div id="YMapsID" style="width:100%;height:100%;"</div>
</body>
</html>
# Ответить
74. zoytsa 19.08.2014 12:19
Обработка класс!
Ребят, не подскажите, как изменить рисунок метки на карте?
Спасибо! :-)
# Ответить
75. ilov_boris (файл скачал) 18.03.2015 10:36
Чувак, не занимайся программированием. У тебя плохо получается. Меня чуть не вырвало от твоего кода.
Ответили: (76)
# Ответить
76. Yashazz 18.03.2015 12:19
(75) ilov_boris, это твои маленькие проблемы, ага. Есть что сказать конкретно - давай, высказывай в личку или по теме, а озвучивать свои кишечные трудности - не на ИС. Тут люди дело делают, вообще-то.
Ответили: (77) (78)
# Ответить
77. ilov_boris (файл скачал) 19.03.2015 19:21
(76) Yashazz, "Тут люди дело делают, вообще-то."
Да вы занимайтесь чем хотите... В паблик свои дела только не выкладывайте.
# Ответить
78. ilov_boris (файл скачал) 23.03.2015 15:04
(76) Ладно, чувак, приношу публично свои извинения. Не серчай.
Из беседы в личке я понял, что человек ты адекватный, но писать таки старайся аккуратнее.
Это ж паблик. По публичному коду судят о всех одинэсниках.
Ответили: (79)
# Ответить
79. Yashazz 24.03.2015 11:59
(78) Ладно, проехали. В свою очередь, извиняюсь за специфический стиль кода (это я так эффект цопирайта типа делаю), и за недостаточные комментарии; также, готов рассматривать претензии по структурированности и логике кода. Ну и если кто нарыл ошибку или лажу, обязательно сообщайте, плиз.
# Ответить
80. gfoods (файл скачал) 03.06.2015 08:54
Решение проблемы с растягиванием карты на все HTML поле:
</script>

<style type="text/css">
    html, body{
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
    }
	body{-moz-user-select:none;}
	
	#OurYMap {
	width:100%;
	height:100%;
	}
</style>

	
</head>
...Показать Скрыть
# Ответить
Внимание! За постинг в данном форуме $m не начисляются.
Внимание! Для написания сообщения необходимо авторизоваться
Текст сообщения*
Прикрепить файл






IE 2016