我遇到了一个问题,就是当页面加载时,google.maps.geometry.poly.containsLocation(latLng,polygon)第一次不起作用,但在我开始触发事件后它就可以正常工作。
你有什么想法,为什么会出现这种情况?
谢谢!
我遇到了一个问题,就是当页面加载时,google.maps.geometry.poly.containsLocation(latLng,polygon)第一次不起作用,但在我开始触发事件后它就可以正常工作。
你有什么想法,为什么会出现这种情况?
谢谢!
主要原因是首次Google API未能正确加载,并且您正在尝试使用它。
var rsul = google.maps.geometry.poly.containsLocation(new google.maps.LatLng(-12.043333, -77.028333), bermudaTriangle);
所以它显示“无法读取未定义的属性 'poly'”
因此,我们需要使用延迟计时器,在页面加载后再执行。
示例:
setTimeout(function() {
var rsul = google.maps.geometry.poly.containsLocation(new google.maps.LatLng(-12.043333, -77.028333), bermudaTriangle);
console.log(rsul);
}, 1000);
因此它会给出正确的布尔值。
&libraries=geometry
。我认为v3版本中存在一个错误。 - Leo