Карты Google: пользовательский значок и метка для каждого маркера - PullRequest
3 голосов
/ 09 июля 2010

Я нашел код для отображения карт Google с несколькими маркерами, используя JQuery & xml.

посмотреть вживую Пример

У меня есть marker.js вот так

$(document).ready(function() {
  $("#map").css({
        height: 500,
        width: 800
    });
    var myLatLng = new google.maps.LatLng(17.74033553, 83.25067267);
  MYMAP.init('#map', myLatLng, 11);

  $("#map");
        MYMAP.placeMarkers('markers.xml');
  });

var MYMAP = {
  map: null,
    bounds: null
}

MYMAP.init = function(selector, latLng, zoom) {
  var myOptions = {
    zoom:zoom,
    center: latLng,
    mapTypeId: google.maps.MapTypeId.ROADMAP    
  }
  this.map = new google.maps.Map($(selector)[0], myOptions);
    this.bounds = new google.maps.LatLngBounds();
}

MYMAP.placeMarkers = function(filename) {
    $.get(filename, function(xml){
        $(xml).find("marker").each(function(){
            var name = $(this).find('name').text();
            var address = $(this).find('address').text();                                 

                        var icon = $(this).find('icon').text();

            // create a new LatLng point for the marker



            var lat = $(this).find('lat').text();
            var lng = $(this).find('lng').text();
            var point = new google.maps.LatLng(parseFloat(lat),parseFloat(lng));

            // extend the bounds to include the new point
            MYMAP.bounds.extend(point);

            var marker = new google.maps.Marker({                                
                position: point,
                map: MYMAP.map
            });



            var infoWindow = new google.maps.InfoWindow();
            var html='<strong>'+name+'</strong.><br />'+address;
            google.maps.event.addListener(marker, 'click', function() {
                infoWindow.setContent(html);
                infoWindow.open(MYMAP.map, marker);
            });
            MYMAP.map.fitBounds(MYMAP.bounds);
        });
    });
}

& xml код, который я использую.

<marker>
<name>.hu</name>
<address>near Viswa Teja School, Thatichetlapalem, Visakhapatnam</address>
<lat>47.29</lat>
<lng>19.05</lng>
</marker>

Я хочу пользовательский значок маркера и метка для каждого маркера .

Можно ли работать в вышеуказанных кодах?

ИЛИ как мне этого добиться?

Ответы [ 2 ]

2 голосов
/ 09 июля 2010

Вы можете сделать это следующим образом:

    new google.maps.Marker({ 
        position: new google.maps.LatLng(latitude, longitude), 
        map: MYMAP.map, 
        icon: new google.maps.MarkerImage("<REPLACE_WITH_MARKER_IMAGE_URL>")}); 

Также здесь - соответствующая документация.

0 голосов
/ 10 июля 2010

После многих поисков и экспериментов я наконец-то остановился на этом. Более простой способ Настройте свои Gmaps.

Надеюсь, это поможет новичкам здесь, как и я!

ДЕМО ЗДЕСЬ

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...