Google Maps V3 несколько маркеров с указаниями - PullRequest
0 голосов
/ 03 марта 2011

Мой код указан ниже. Я просто хочу добавить еще один маркер и иметь возможность щелкнуть по этому маркеру и вместо этого указать направления для этого.Существует небольшая форма, которая выдает направления движения под картой.Я просмотрел весь интернет и искал галактику Млечный путь, и я не могу понять это

    <h2>Get Driving Directions</h2> 
    <p>
        <label> coming from: <input class="roundInput" id="to-input" type="text" value="" /> </label> <input style="position:relative;top:6px;" type="image" src="<?php bloginfo('template_directory'); ?>/img/route_button.gif" value="route" onclick="doDirections()" /> 
    <div id="dynamicDirections" style="margin-left:30px">
    </div>
    </p>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript">
// <![CDATA[

    var psGlobals={
        address:'3908 Aurora Ave N, Seattle, WA 98103 ',
        lat:47.6545077,
        lon:-122.3471123,
        zoomlevel:13
    };


    function initialize() 
    { 
        psGlobals.latlng = new google.maps.LatLng(psGlobals.lat, psGlobals.lon);
        buildMap();
        psGlobals.dirRenderer = new google.maps.DirectionsRenderer();
        psGlobals.dirService = new google.maps.DirectionsService();
    }

    function buildMap()
    {
        var myOptions, marker;
        myOptions = {
              navigationControl: true,
              navigationControlOptions: {
                  style: google.maps.NavigationControlStyle.ZOOM_PAN
                },

              mapTypeControl: true,
              scaleControl: false,
              zoom: psGlobals.zoomlevel,
              center: psGlobals.latlng,
              mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        psGlobals.map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
        psGlobals.marker = new google.maps.Marker({
            position: psGlobals.latlng, 
            map: psGlobals.map,
            title:"4Evergreengroup"
        });


    }

    function doDirections()
    {
        var fromStr = $('#to-input').val();

        var dirRequest = {
            origin: fromStr,
            destination: psGlobals.address,
            travelMode: google.maps.DirectionsTravelMode.DRIVING,
            unitSystem: google.maps.DirectionsUnitSystem.IMPERIAL
        };
        psGlobals.dirService.route(dirRequest, handleDirections);
    }

    function handleDirections(dirResult,dirStatus)
    {
        if (dirStatus != google.maps.DirectionsStatus.OK) 
        {
            alert('Directions failed: ' + dirStatus);
            return;
        }

        psGlobals.dirRenderer.setMap(psGlobals.map);
        psGlobals.dirRenderer.setPanel(document.getElementById('dynamicDirections'));
        psGlobals.dirRenderer.setDirections(dirResult);
  }

  $(document).ready(function(){initialize()});

// ]]>

</script> 

1 Ответ

0 голосов
/ 03 марта 2011

Не уверен, если это отвечает на ваш вопрос. Вот ваш код:

http://bobcravens.com/demos/temp/gmap1.html

Нажатие на кнопку «маршрут» генерирует и вставляет направления. Ваш оригинальный код не работал для меня. Я добавил div 'map_canvas', чтобы указать цель для google.maps. Кажется, сейчас работает. Дайте мне знать, если есть еще?

Bob

...