Google Maps v3: удаление маркеров с задержкой - PullRequest
1 голос
/ 25 апреля 2011
var markers = new Array();

$(function () { 

$.ajax({
    url: "json.php",
    data: {get: 'value'},
    success: function(data){


        $.each(data, function(i, item) {
           markers.push([data[i].filename, data[i].date, data[i].lat,   data[i].long]);
        });

        var myOptions = { disableDefaultUI: true, mapTypeId: google.maps.MapTypeId.ROADMAP }
        var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

        setMarkers(map, markers);

     }
});

$("a.imglink").fancybox({
    'speedIn'       :   600, 
    'speedOut'      :   200
});

});

function setMarkers(map, markers) {

var bounds = new google.maps.LatLngBounds();

for (var i = 0; i < markers.length; i++) { 

    var siteLatLng = new google.maps.LatLng(markers[i][2], markers[i][3]);

    var marker = new google.maps.Marker({

        position: siteLatLng,

        map: map,

        animation: google.maps.Animation.DROP,

        title: markers[i][1],

        html: markers[i][0]

    }); 


    google.maps.event.addListener(marker, "click", function () {

        $('.imglink').attr('href', 'img/' + this.html);
        $('.imglink').click();

    });


    bounds.extend(siteLatLng);

    map.fitBounds(bounds);

} 

}

Отлично работает, но все мои маркеры падают одновременно.Есть ли способ добавить задержку между каждым маркером?Спасибо!

Ответы [ 2 ]

3 голосов
/ 13 мая 2011

Взгляните на setInterval.Я думаю, что это может помочь вам с вашей проблемой.Таким образом вы заставляете маркеры падать по одному за раз.Когда все упало, вы можете использовать clearInterval, чтобы остановить его.
Вот учебник

0 голосов
/ 14 ноября 2014

В случае, если кто-то сталкивается с этим вопросом, не найдя ответа от Google, вот ссылка на Google, отвечая на этот вопрос напрямую: https://developers.google.com/maps/documentation/javascript/examples/marker-animations-iteration

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...