Javascript 如何访问谷歌地图标记变量
我有各种google maps标记,它们在循环中创建,输出如下:Javascript 如何访问谷歌地图标记变量,javascript,google-maps,Javascript,Google Maps,我有各种google maps标记,它们在循环中创建,输出如下: var marker1=new google.maps.Marker({position:new google.maps.LatLng(coordinates),map:map,title:'example'});google.maps.event.addListener(marker1,'click',function(){infwind(marker1,'<p>some info</p>')}); 我
var marker1=new google.maps.Marker({position:new google.maps.LatLng(coordinates),map:map,title:'example'});google.maps.event.addListener(marker1,'click',function(){infwind(marker1,'<p>some info</p>')});
我得到一个错误,没有定义marker1。如何访问这些标记?我假设我必须做一些像google.maps.someotherstuff之类的事情,或者这些变量没有我想象的那么全局。实际上,在Javascript中用
var
作为变量的前缀意味着该变量在包含函数的范围内是局部的。所有未声明的变量都将被视为全局变量。您可以在创建标记时指定ID,然后稍后引用该ID
创建标记:
var location = new google.maps.LatLng(x, y);
var marker = new google.maps.Marker({
position: location,
map: map,
id: place your id here
});
markers.push(marker)
然后,您可以按照以下方式引用该id:
for (var i=0; i < markers.length; i++) {
if (marker[i].id == '') {
do something;
}
}
for(变量i=0;i
for (var i=0; i < markers.length; i++) {
if (marker[i].id == '') {
do something;
}
}