MediaWiki:Common.js — различия между версиями
Материал из Энциклопедия фонда «Хайазг»
| Строка 14: | Строка 14: | ||
ref = val4.replace(re,'_'); | ref = val4.replace(re,'_'); | ||
//создание переменной для содержимого балуна | //создание переменной для содержимого балуна | ||
| − | var | + | var tab_content = val2 + '<br>' + '<a href=http://draft.hayazg.info/' + ref + '>' + val4 + '</a>'; |
//создание переменной для геокодинга | //создание переменной для геокодинга | ||
var mygeocod = ymaps.geocode(val, {results:1}); | var mygeocod = ymaps.geocode(val, {results:1}); | ||
| Строка 26: | Строка 26: | ||
var plac = new ymaps.Placemark | var plac = new ymaps.Placemark | ||
(point, | (point, | ||
| − | { | + | { |
| + | clusterCaption: val4, | ||
| + | balloonContentBody: tab_content | ||
| + | }, | ||
{//здесь параметры картинок для маркеров | {//здесь параметры картинок для маркеров | ||
/*iconImageHref:'plac.png', iconImageSize: [50,42]*/ | /*iconImageHref:'plac.png', iconImageSize: [50,42]*/ | ||
Версия 10:17, 5 июля 2012
/* Размещённый здесь JavaScript код будет загружаться всем пользователям при обращении к каждой странице */
//получает адреса, обрабатывает и отображает точки на карте
function ymGeocod(val, val2, val3, val4)
{
/*
val -адрес
val2-картинка
val3-статус объекта
val4-название объекта
*/
var re= /\s/g
//преобразование названия для использоваиня в ссылке
ref = val4.replace(re,'_');
//создание переменной для содержимого балуна
var tab_content = val2 + '<br>' + '<a href=http://draft.hayazg.info/' + ref + '>' + val4 + '</a>';
//создание переменной для геокодинга
var mygeocod = ymaps.geocode(val, {results:1});
//после обработки делаем функцию...
mygeocod.then(
function(res){
if(res.geoObjects.getLength()) {
//координаты точки для маркера
var point = res.geoObjects.get(0).geometry.getCoordinates();
//plac- маркер с контентом, его передать в кластерер
var plac = new ymaps.Placemark
(point,
{
clusterCaption: val4,
balloonContentBody: tab_content
},
{//здесь параметры картинок для маркеров
/*iconImageHref:'plac.png', iconImageSize: [50,42]*/
}
);
//добавление маркеров в кластерер
cluster.add(plac);
//отображение кластерера на карте
myMap.geoObjects.add(cluster);
}
}
)
}
//центральная функция
function ymInit(S_all)
{
// Создаем кластеризатор со стандартными иконками
cluster = new ymaps.Clusterer();//{clusterIcons : clusterIcons});
//создание кластеризатора с пользовательскими иконками
//cluster = new ymaps.Clusterer({clusterIcons : clusterIcons});
// Создание экземпляра карты myMap и его привязка к контейнеру с
// заданным id ("map")
myMap = new ymaps.Map('map', {
center: [47.23,39.73],
zoom: 10,
});
//добавление инструментов для просмотра
myMap.controls
// Кнопка изменения масштаба
.add('zoomControl')
// Список типов карты
.add('typeSelector')
// Стандартный набор кнопок
.add('mapTools');
//скролл колесиком
myMap.behaviors.enable('scrollZoom');
//обработка входящей информации
/*
A_all[i][0]-картинка
A_all[i][1]-адрес
A_all[i][2]-доп инфа.
A_all[i][3]-название здания-памятника
*/
S_all=S_all.toString();
A_all=S_all.split('‼');
for (var i=0;i<A_all.length; i++)
{A_all[i]=A_all[i].split('|');}
//последовательный геокодинг и добавление адресов на карту в кластере
for (var i=0; i < A_all.length; i++)
{
if (A_all[i][2]==null){continue;}
else{
ymGeocod(A_all[i][1], A_all[i][0], A_all[i][2], A_all[i][3]);
}
}
}