星期二, 4月 13, 2010

Google map Click

function SearchMap(address)
{
var marker
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map_"));
var geocoder = new GClientGeocoder();


map.setUIToDefault();
geocoder.getLatLng(address, function(point) {
if (!point)
{
alert('Google Maps 找不到該地址,無法顯示地圖!'); //如果Google Maps無法顯示該地址的警示文字
}
else
{

$(".latlng_").text(point.lat()+","+point.lng());

map.setCenter(point, 13);
marker = new GMarker(point);
map.addOverlay(marker);
marker.openInfoWindowHtml(address);
}
});
GEvent.addListener(map,"click", function(overlay,latlng) {
map.removeOverlay(marker);
if (overlay) {
// ignore if we click on the info window
return;
}
var tileCoordinate = new GPoint();
var tilePoint = new GPoint();
var currentProjection = G_NORMAL_MAP.getProjection();

var geoPoint0= new GLatLng(latlng.lat(),latlng.lng());


var myLatLng = new GLatLng(latlng.lat(), latlng.lng());

//移動地圖中心點
map.panTo( myLatLng );
//設定標註座標
marker.setLatLng( myLatLng );

var myGeocoder = new GClientGeocoder();
myGeocoder.getLocations(myLatLng, function(addresses) {
if(addresses.Status.code != 200) {
//alert("此座標沒有找到對應的地址 " + myLatLng.toUrlValue());
alert("此座標沒有找到對應的地址,請重新點選其他地方!");
}
else
{
var result = addresses.Placemark[0];
marker= new GMarker(geoPoint0, { title:latlng.lat()+","+ latlng.lng()});
map.addOverlay(marker);
marker.openInfoWindowHtml( result.address );
$(".latlng_").text(latlng.lat()+","+latlng.lng());
}
});
});


}
}

沒有留言:

張貼留言

留個話吧:)

其他你感興趣的文章

Related Posts with Thumbnails