<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>獲取騰訊soso地圖的座標</title> <script charset="utf-8" src="http://api.map.soso.com/v1.0/main.js"></script> <script charset="utf-8" src="http://api.map.soso.com/doc/js/MarkerPicker.js"></script> <script type="text/javascript"> function init() { var markers = []; var map = new soso.maps.Map(document.getElementById("map_container"), { // 地圖的中心地理座標。 center: new soso.maps.LatLng(28.766050,104.630753) }); //這裏能夠定義一個預設的標註好比 var point = ["39.894454","116.433952"]; if (typeof(point) !== 'undefined') { map.moveTo(new soso.maps.LatLng(point[0],point[1])); map.zoomTo(13); var marker = new soso.maps.Marker({ position: (new soso.maps.LatLng(point[0],point[1])), map: map }); markers.push(marker); } var stack=[];//聲明一個數組,用來保存標註位置的座標 var MarkerPicker=new soso.maps.MarkerPicker({ element:document.getElementById("btn"), width:600, height:500 });//建立MarkerPicker類的一個實例 MarkerPicker.setIcon("http://api.map.soso.com/doc/img/pin_3.png",[0,44],[39,39]); //給MarkerPicker對象綁定mark事件 soso.maps.Event.addListener(MarkerPicker,"save",function(latlng){ stack.push(this.lat+","+this.lng); //document.getElementById("ditu").value=stack[0]; map.moveTo(new soso.maps.LatLng(this.lat, this.lng)); map.zoomTo(13); clearOverlays(markers); var marker = new soso.maps.Marker({ position: (new soso.maps.LatLng(this.lat, this.lng)), map: map }); markers.push(marker); document.getElementById("nodethemap").value=stack.join(); }); } //清除地圖上的marker function clearOverlays(overlays){ var overlay; while(overlay = overlays.pop()){ overlay.setMap(null); } } window.onload=init; </script> </head> <body> <input type="text" id="nodethemap" class="px" style="width:200px"/> <span id="btn" class="btnGreen">標註位置</span> <br /> <br /> <div style="width:400px;height:200px;border:1px solid #ccc;" id="map_container"></div> </form> </body> </html>