マップにマーカーを配置し、そのマーカーの位置を使用してポリゴンを描画しようとしています。しかし、marker.getPosition()は最初に値を返すようには見えません。以前のマーカー位置を取得するには、関数を再度呼び出す必要があります。誰もが、これは地図マーカーgetPosition()は、関数の最初の呼び出し時にGoogleマップでは機能しません。
function codeAddress() {
var address = fubar;
geocoder.geocode({ 'address': address}, function(results, status) {
map.setCenter(results[0].geometry.location);
map.setZoom(1);
if (marker == null){
marker = new google.maps.Marker({
map: map,
});
}
marker.setPosition(results[0].geometry.location);
});
document.write(marker.getPosition()); //this displays nothing
}
どれ勧告の利点を取ることができる前に
alert("Alert 2")
が表示されていることがわかります。これを試してみてくださいこれを回避するには? – user1330217
それを回避するには、あなたのロジックを(アラートのように)コールバックの中に入れなければなりません。ウェブサイトにテキストを挿入/編集する必要がある場合は、[jQuery](http://www.jquery.com)を使用することをお勧めします。 –