2016-04-08 75 views

回答

1

爲了得到在同一多個標記地圖你會想要使用邊界方法。這個例子使用javascript。

的Html

<div itemprop="map" id="googleMap" style="height:400px;width:100%;"></div> 


       <script src="https://maps.googleapis.com/maps/api/js"></script> 

的Javascript

var myCenter = new google.maps.LatLng(YourLat, YourLng); 
var myCenter2 = new google.maps.LatLng(YourSecondLat, YourSecondLng); 

function initialize() { 
    var bounds = new google.maps.LatLngBounds(myCenter, myCenter2); 
    var mapProp = { 
     zoom: 12, 
     scrollwheel: false, 
     draggable: false, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    var map = new google.maps.Map(document.getElementById("googleMap"), mapProp); 

    var marker = new google.maps.Marker({ 
     position: myCenter, 
     map: map, 
    }); 
    var marker2 = new google.maps.Marker({ 
     position: myCenter2, 
     map: map, 
    }) 
    map.fitBounds(bounds); 
} 

google.maps.event.addDomListener(window, 'load', initialize); 

的map.fitBounds(邊界)只會中心您標記之間的地圖,所有標記會在屏幕上。

+0

偉大的謝謝你:) – userdanhas1994

1

您的語法錯了。您需要使用

.Markers(m => m.Add().Title("Hello World!"))

檢查the documentation瞭解更多

+0

非常感謝你,所以說如果我想添加多個標記來顯示歐洲的城市我怎麼能做到這一點? – userdanhas1994

+0

您繼續添加標記 –

+0

。標記(m => m.Add()。標題(「long」,「lat」)) 。標記(m => m.Add()。標題(「long1」,「lat1 「)) .Markers(m => m.Add()。標題(」long3「,」lat3「)) 所以我可以不斷添加幾個標記likethis? – userdanhas1994

1

您需要添加.Center(c => c.Latitude(1.2233424).Longitude(4.865876))

Html.GoogleMap() 
      .Name("map") 
      .Height(300) 
      .Center(c => c.Latitude(1.2233424) 
          .Longitude(4.865876)) 
      .Markers(m => m.Add().Title("Hello World!")) 

來源:jmelosegui docs

+0

非常感謝你,所以說如果我想添加多個標記來顯示歐洲的城市我怎麼能做到這一點? – userdanhas1994