Google Maps API V3を使用していますが、画面上でマーカーを移動しようとしています。ここで私が持っているものです。Google Maps APIでマーカーを移動する方法
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map_canvas { height: 100% }
</style>
<script type="text/javascript"
src="http://maps.googleapis.com/maps/api/js?sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var myLatLng = new google.maps.LatLng(50,50);
var myOptions = {
zoom: 4,
center: myLatLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
image = 'bus.gif';
marker = new google.maps.Marker({position: myLatLng, map: map, icon: image});
marker.setMap(map);
}
function moveBus()
{
// Move Bus
}
</script>
</head>
<body onload="initialize()">
<script type="text/javascript">
moveBus();
</script>
<div id="map_canvas" style="height: 500px; width: 500px;"></div>
</body>
</html>
今、私は
marker.setPosition(new google.maps.LatLng(0,0));
でバスを移動//置き換えてみましたしかし、それは何もしなかったものを。それはAPIリファレンスで見たコマンドです。私はJavascriptにも比較的新しいので、私のところはJSエラーかもしれません。
これはちょっと疑問に思うかもしれませんが、私のコードでinitialize()の前にmoveBus()が呼ばれているのはなぜですか? onloadスクリプトは体内の何よりも先に発生しませんか? – gsingh2011
あなたのmoveBus()呼び出しは、本体のスクリプトブロックだけのonloadブロックにはありません。それは読み込まれるとすぐに解析されます。次のようなことができます:window.onload = function(){moveBus(); }; – ThinkingStiff
新しい地図を追加せずにマーカーを既存のマップに移動する方法を教えてください。 – Alexandros