Avatar billede carstenandersen Nybegynder
09. marts 2012 - 10:26 Der er 6 kommentarer og
1 løsning

Google Maps V3 flere markers

Hej eksperter

Jeg vil gerne vise et Google Maps kort på en "mobil side" lavet med Jquery mobile. Dennte kode:

<!DOCTYPE html>
<html>
<head>
   
<title>Google Maps</title>
<META name="robots" content="noindex">

<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.css" />
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.min.js"></script> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/geocode/output?parameters"></script>

<style type="text/css">
.ui-page {
background: #e2e2e2;
}
</style>

<style>
<!--
a{text-decoration:none}
//-->
</style>

<script>
$('#map_result').live('pageshow',function(event){
    loadMap(56.5562,10.52854);
});   
function loadMap(Lat, Long){
      var myLatlng = new google.maps.LatLng(Lat, Long);
      var myOptions = {
        zoom: 9,
        center: myLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
      }
      map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
     
      var marker = new google.maps.Marker({
      position: myLatlng,
      map: map,
      title:"Hello World!"
  });
}
</script>
<style>
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map_result{width:100%; height:100%;}
#map_canvas{width:100%; height:92%;padding:0;}
</style>

</head>

<body>

<!-- page -->
<div data-role="page" id="map_result">

<!-- header -->
<div data-role="header" data-theme="b" data-position="inline">

<h1>Google Maps</h1>

</div>
<!-- /header -->

<div id="map_canvas"></div>

</div>
<!-- /page -->

</body>
</html>

viser helt fint et enkelt sted. Min udfordring er, at jeg gerne vil kunne vise flere steder markeret med et flag. Jeg har prøvet RIGTIG mange koder, men der er ikke nogle, som vil virke ;-)

Håber, at I kan hjælpe. På forhånd tak.
Avatar billede olebole Juniormester
09. marts 2012 - 12:12 #1
<ole>

Det er længe siden, jeg har rodet med GMaps, men mon ikke du kan skrive noget i stil med:

function loadMap(Lat, Long, Lat_B, Long_B){
      var myLatlng = new google.maps.LatLng(Lat, Long),
      myLatlng_B = new google.maps.LatLng(Lat_B, Long_B);
      var myOptions = {
        zoom: 9,
        center: myLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
      }
      map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
     
      var marker = new google.maps.Marker({
          position: myLatlng,
          map: map,
          title:"Hello World!"
      }),
      marker_B = new google.maps.Marker({
          position: myLatlng_B,
          map: map,
          title:"Hello Other World!"
      });
}

/mvh
</bole>
Avatar billede carstenandersen Nybegynder
09. marts 2012 - 14:31 #2
Fedt, det virker :-)

Har rodet med infowindow ala

// Creating an InfowWindow         
          var infowindow = new google.maps.InfoWindow({
            content: 'Hello world'
          });
         
          // Adding a click event to the marker
          google.maps.event.addListener(marker, 'click', function() {
            // Opening the InfoWindow
              infowindow.open(map, marker);
          });

Virker fint på "var marker", men hvordan vedr. "marker_B"? Altså hver marker har deres eget infowindow.

Reelt ekstra spg., så besvar kun, hvis det er lige til ;-)

Husk også at smide et svar
Avatar billede olebole Juniormester
09. marts 2012 - 14:39 #3
// Creating an InfowWindow         
          var infowindow_B = new google.maps.InfoWindow({
            content: 'Hello world'
          });
         
          // Adding a click event to the marker
          google.maps.event.addListener(marker_B, 'click', function() {
            // Opening the InfoWindow
              infowindow_B.open(map, marker_B);
          });


Ellers tak, jeg samler ikke point. Læg selv et svar og accepter det, så tråden lukkes  =)
Avatar billede carstenandersen Nybegynder
09. marts 2012 - 15:17 #4
Sådan, det fungerer bare :-)

Tusind tak for hjælpen. Smid et svar :-)
Avatar billede olebole Juniormester
09. marts 2012 - 15:20 #5
Som jeg skrev i #3: "Ellers tak, jeg samler ikke point. Læg selv et svar og accepter det, så tråden lukkes  =)"
Avatar billede carstenandersen Nybegynder
09. marts 2012 - 15:52 #6
Havde lige overset #3 ;-) Takker.
Avatar billede olebole Juniormester
09. marts 2012 - 16:05 #7
Selvtak  *o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester