Javascript-页面加载时触发单击

Javascript-页面加载时触发单击,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我用谷歌地图API创建了一个网站。如果用户单击多边形,将显示一条消息。它在单击时工作,因此用户必须在多边形区域内外单击,但我希望根据用户的当前位置在页面加载时进行 是否可以在页面加载时触发下面的功能 google.maps.event.addListener(map, 'click', function (event) { if (boundaryPolygon!=null && boundaryPolygon.Contains(event.latLng)) {

我用谷歌地图API创建了一个网站。如果用户单击多边形,将显示一条消息。它在单击时工作,因此用户必须在多边形区域内外单击,但我希望根据用户的当前位置在页面加载时进行

是否可以在页面加载时触发下面的功能

google.maps.event.addListener(map, 'click', function (event) {
        if (boundaryPolygon!=null && boundaryPolygon.Contains(event.latLng)) {
            document.getElementById('result').innerHTML = 'You live in this area.';
        } else {
            //alert(event.latLng + " Du bist ein Ossi!");
            document.getElementById('result').innerHTML = 'You live outside this area.';
        }

    });
}

您可以在地图上触发如下单击事件(其中latLng属性是单击的位置):

代码片段:

//多边形示例来自:https://developers.google.com/maps/documentation/javascript/examples/polygon-simple
//本例创建了一个表示百慕大三角形的简单多边形。
函数initMap(){
var map=new google.maps.map(document.getElementById('map'){
缩放:5,
中心:{
拉脱维亚:24.886,
液化天然气:-70.268
},
mapTypeId:google.maps.mapTypeId.TERRAIN
});
//定义多边形路径的板条坐标。
var triangleCoords=[{
拉脱维亚:25.774,
液化天然气:-80.190
}, {
拉脱维亚:18.466,
液化天然气:-66.118
}, {
拉脱维亚:32.321,
液化天然气:-64.757
}, {
拉脱维亚:25.774,
液化天然气:-80.190
}];
//构造多边形。
var boundaryPolygon=新建google.maps.Polygon({
路径:三角形门,
strokeColor:“#FF0000”,
笔划不透明度:0.8,
冲程重量:2,
填充颜色:'#FF0000',
不透明度:0.35,
可点击:false
});
边界多边形.setMap(map);
google.maps.event.addListener(映射,'click',函数(事件){
if(boundaryPolygon!=null&&google.maps.geometry.poly.containsLocation(event.latLng,boundaryPolygon)){
document.getElementById('result').innerHTML='youliveinthearea';
}否则{
document.getElementById('result').innerHTML='youlivingthearea';
}
});
google.maps.event.trigger(映射,'click'{
latLng:新的google.maps.latLng(24.886,-70.268)
});
}
html,
身体{
身高:100%;
保证金:0;
填充:0;
}
#地图{
身高:100%;
}


难道你不能将所有代码移到另一个函数中,然后从该侦听器和加载事件中调用该函数吗?如果我这样做,整个脚本就不再工作了。它需要点击才能工作。点击谷歌地图将位置传递给脚本。您可以将整个
点击
函数放入一个函数中,并将其命名为
函数显示区(事件){//if…else…}
。然后添加事件监听器(
addListener(map,'click',showArea(event));
)并在map ready事件上运行
showArea()
函数(我认为maps api在加载映射时有一些事件)尝试“google.maps.event.addEventListener”(“load”,map,function(event)){…'@Niandrei:我试过了。它不起作用。然后整个剧本就不起作用了。
google.maps.event.trigger(map, 'click', {
  latLng: new google.maps.LatLng(24.886, -70.268)
});