Вот карта, я работаю над:Изменить значок на основе JSON атрибутов
http://members.upcpoczta.pl/w.racek/mapa.html
Я хотел бы изменить значок, который показывает в правом верхнем углу Infobox (при выборе маршрута) соответственно к свойствам файла JSON (цветовой тег). Существует 5 базовых цветов, используемых для маркировки велосипедных маршрутов (синий, красный, зеленый, желтый, черный и без цвета), почти все из них имеют цвет (возможно, 10% имеют символ или разную маркировку). У меня есть 5 значков png, которые должны быть связаны с этим. На данный момент мне удалось установить простую ссылку html, и она отображает только красный значок, но, возможно, есть способ изменить его в соответствии с json-свойствами?
Вот часть кода, который отвечает за показ этой инфобокса: var info = L.control();
info.onAdd = function (map) {
this._div = L.DomUtil.create('div', 'info');
this.update();
return this._div;
};
info.update = function (props) {
this._div.innerHTML = (props ?
'<b>' + '<img src="img/red.png " height="42" width="42" > ' + props.name
: 'Kliknij na szlak');
};
info.addTo(map);
Прямо сейчас значок всегда красный.
Я благодарен за советы. Благодаря!
Как выглядит ваш json-файл? – Mike
Вот его часть: var rower = {"type": "FeatureCollection", "features": [{"type": "Feature", "properties": {"osm_id": "50272", "name" : «Euroroute R1 - часть Польши», «цвет»: «зеленый», «сеть»: «icn», «ref»: «R1», «descriptio»: null, «length»: null, «operator»: null , "состояние": NULL, "веб-сайт": NULL, "official_r": NULL, "old_ref": NULL, "расстояние": нулевая}, "геометрии": { "типа": "MultiLineString", "координаты": [ [[18.7691769,53.6058359], ..... и т. Д. ... – Voyteck