для моего веб-приложения, мне нужно разрешить добавить маркер между 2 маркерами.
У меня есть массив маркеров, и я их нажимаю, когда создаю один.
Моя проблема, у меня не получается, что мой массив работает. Я добавляю маркер на карту с правильной позицией между предыдущей и следующей, но как я могу вставить свой массив в правильный индекс?
Я добавляю между маркером 1 и 2, поэтому новый маркер должен иметь индекс 2, тогда старый индекс 2 должен иметь индекс 3 ....
`
функция AddMarkerAfter (i)
{
var lat = (markers[i].getPosition().lat() + markers[(i+1)].getPosition().lat()) / 2;
var lng = (markers[i].getPosition().lng() + markers[(i+1)].getPosition().lng()) / 2;
var marker = new google.maps.Marker({
position: new google.maps.LatLng(lat, lng),
map: map,
title: 'Number ' + (i+1),
draggable: true
});
var l = markers.length;
for (var j=i; j<l; j++)
{
markers[j+1] = markers[j];
}
markers[i] = marker;
}`
Но результат катастрофический ... Есть ли способ "толкнуть" в массиве?
Спасибо!
О, Боже мой!
Я решаю свою проблему с помощью этой простой строки:
markers.splice(i, 0, marker);
Извините!