Jquery 加载所有标记后停止反弹标记
我有一个标记每秒加载一个。大约有50个,加载所有这些需要一段时间。因此,作为它们仍在加载的指示,我已将它们的动画设置为“反弹”。但一旦它们全部加载,我想停止反弹动画。我该怎么做Jquery 加载所有标记后停止反弹标记,jquery,google-maps,animation,google-maps-markers,Jquery,Google Maps,Animation,Google Maps Markers,我有一个标记每秒加载一个。大约有50个,加载所有这些需要一段时间。因此,作为它们仍在加载的指示,我已将它们的动画设置为“反弹”。但一旦它们全部加载,我想停止反弹动画。我该怎么做 var geocoder; var map; var addresses = new Array(); var infowindow; var theInterval; function initialize() { geocoder = new google.maps.Geocoder(); var
var geocoder;
var map;
var addresses = new Array();
var infowindow;
var theInterval;
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(42.095287, -79.3185139);
var myOptions = {
maxZoom: 14,
zoom: 9,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
infowindow = new google.maps.InfoWindow({});
}
$(document).ready(function () {
getAddresses();
theInterval = setInterval("codeAddress()", 1000);
});
function getAddresses () {
$('.LocationAddress').each(function () {
addresses.push($(this).text());
});
}
function codeAddress() {
if (addresses.length == 0) {
clearInterval(theInterval);
}
var addy = addresses.pop();
geocoder.geocode({
'address': addy
}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
position: results[0].geometry.location,
map: map,
title: addy,
animation: google.maps.Animation.BOUNCE,
});
//Adding a click event to the marker
google.maps.event.addListener(marker, 'click', function () {
infowindow.setContent('<div id=\"infowindow\" style=" height:100px;>' + '<div id=\"LeftInfo\">' + "Hello World!" + '</div>' + '</div>');
infowindow.open(map, this);
});
}
}); //Geocoder END
}
保留所有标记的列表 加载所有内容后,循环并停止其动画 在其他新闻中,这个:值得一读。它的旧版本是指hte API的v2,否则信息仍然是相关的 您也有一个off-by-one错误。clearInterval应该在pop之后调用。在当前设置中,即使数组为空,仍会再次调用该函数