Kendo UI Map - Как добавить маркер с помощью JavaScript
У меня есть карта, которую пользователь будет использовать, чтобы отметить свою позицию. Я использую геолокации и слой Bing, чтобы дать им хорошее начало. Я хочу, чтобы они нажимали на карту, перенастраивали ее до точки, которую щелкали, удаляли существующий маркер, а затем создавали новый, в котором карта центрирована.
function onClick (e) {var resultArray = e.location.toString (). split (',');
$('#map').data("kendoMap").center([parseFloat(resultArray[0]), parseFloat(resultArray[1])]);
$('#map').data("kendoMap").markers.clear();
$('#map').data("kendoMap").markers.add([parseFloat(resultArray[0]), parseFloat(resultArray[1])]);
}
Приведенная выше функция центрирует карту, удаляет предыдущий маркер и не выдает ошибку ADD. Тем не менее, новый маркер не появляется.
Любая помощь будет оценена.
** Спасибо, что указали мне в правильном направлении. Я создаю свою карту в результате геолокации. Это работает сейчас с этим.
function createMap(Lat, Long) {
$("#map").kendoMap({
center: [Lat, Long],
zoom: 17,
layers: [{
type: "bing",
imagerySet: "aerialWithLabels",
key: "###MYKEY###"
}],
markers: [{
location: [Lat, Long],
shape: "pinTarget",
tooltip: {
content: "You are Here!!"
}
}],
click: onClick,
panEnd: onPanEnd
});
}
function onClick(e) {
var map = $("#map").data("kendoMap");
var loc = map.eventToLocation(e);
map.center(loc);
map.markers.clear();
map.markers.add({ location: loc });
}
1 ответ
Вы должны определить:
var map = $("#map").data("kendoMap");
использовать событие при нажатии
а затем использовать переменную карты
map.center(loc);
map.markers.clear();
map.markers.add({location: loc});