0

私は自分のサイトの bing トラフィック マップをコーディングしようとしていますが、取り除かなければならない 2 つの煩わしさを除いて、すべて問題ありません。

  • 通常、矢印キーを使用すると Web ページを上下に移動できますが、現在はマップの中心のみが移動します。これをオフにするにはどうすればよいですか?

  • マップにトラフィック レイヤーを表示するには、ユーザーが操作してオンにするボタンが必要ですか? デフォルトでトラフィックをオンにしたいだけです。

現在私のサイトにあるコードは次のとおりです。

<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>
4

1 に答える 1

0

これは私にとってはうまくいきます。ページが読み込まれるとトラフィックがあります:

<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>
于 2012-08-27T14:47:54.133 に答える