Как настроить карты трафика Bing для отображения трафика по умолчанию?

Я пытаюсь написать карту трафика bing для своего сайта, и все в порядке, за исключением двух неприятностей, от которых я должен избавиться:

  • Использование клавиш со стрелками обычно позволяет мне перемещаться вверх/вниз по моей веб-странице, но теперь она перемещает только центр карты. Как это отключить?

  • Чтобы карта отображала слой трафика, должна ли быть кнопка, которую пользователь должен использовать, чтобы включить ее? Я просто хочу, чтобы трафик был включен по умолчанию.

Вот код, который сейчас находится на моем сайте:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
      <script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0"></script>
      <script type="text/javascript">
      var map = null;
      function trafficModuleLoaded()
      {
        setMapView();
      }    
       function loadTrafficModule()
      {
       Microsoft.Maps.loadModule('Microsoft.Maps.Traffic', { callback: trafficModuleLoaded });
      }
      function setMapView()
      {
        map.setView({zoom: 12, center: new Microsoft.Maps.Location(43.64, -79.39)})
      }          
      function getMap()
      {
          map = new Microsoft.Maps.Map(document.getElementById('myMap'), {credentials: 'AmREBa2I8sJ_e4p_G4UA00Y-pFpncDf8jG9J0f75aMZszZyXTfnYCdxWWyTuZSC1'});
          loadTrafficModule();
          trafficLayer.show();
      }    
      function showTrafficLayer()
     {    
            var trafficLayer = new Microsoft.Maps.Traffic.TrafficLayer(map);
        // show the traffic Layer
        trafficLayer.show();
      }

      </script>

person user1419715    schedule 18.06.2012    source источник


Ответы (1)


Это отлично работает для меня, трафик есть, когда страница загружается:

<script type="text/javascript">          
  var map = null;

  function getMap()
  {
      map = new Microsoft.Maps.Map(document.getElementById('myMap'), 
      {
        credentials: 'key',
        showDashboard: false,
        mapTypeId: Microsoft.Maps.MapTypeId.road,
        center: new Microsoft.Maps.Location(some, place),
        zoom: 12
      });

      getTraffic();

      var pushpin = new Microsoft.Maps.Pushpin(map.getCenter(), null); 
      map.entities.push(pushpin); 
      pushpin.setLocation(new Microsoft.Maps.Location(some, place));           
   }

   function getTraffic()
   {
      Microsoft.Maps.loadModule('Microsoft.Maps.Traffic', { callback: function() { trafficLayer = new Microsoft.Maps.Traffic.TrafficLayer(map); trafficLayer.show();} });  
   }
  </script>
person Jonathan    schedule 27.08.2012