在页面加载时调用获取参数的javascript函数
在页面加载时调用获取参数的javascript函数,javascript,function,google-maps,parameters,google-maps-markers,Javascript,Function,Google Maps,Parameters,Google Maps Markers,for(i=0;i
for(i=0;i }
添加侦听器时,调用的是markerClick()
函数,而不是将其作为变量传递。以下是修复方法:
//使用这样一个单独的函数可以避免一些麻烦
//for循环中的回调和闭包问题
函数addMapMarkerClickListener(mapMarker,位置){
//我们使用匿名函数作为侦听器
mapMarker.addListener('单击',函数()){
标记点击(位置);
});
}
对于(i=0;i }
一个选项是让您的标记单击
函数返回函数
function markerClick(location) {
return function(evt) {
console.log("you clicked " + JSON.stringify(location));
}
}
代码片段:
var位置=[
[{lat:42,lng:-72},“这里”],
[{lat:42.1,lng:-72.1},“那里”]
];
var mapMarkers=[];
函数初始化(){
var map=new google.maps.map(
document.getElementById(“地图画布”){
中心:新google.maps.LatLng(42,-72),
缩放:10,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
对于(i=0;i
html,
身体
#地图画布{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}
不要调用函数:)您正在调用该函数并将其返回的内容分配给click。click listener函数中的此
就是标记this.getPosition()
将给出它的位置。谢谢,我不知道我是在调用它而不是传递它