javascript
  • google-chrome
  • firefox
  • bing-maps
  • 2017-03-21 32 views 0 likes 
    0

    我正在嘗試將Bing地圖從V7升級到V8。但是,當我改變了地圖的腳本URL引用V8,地圖有時會顯示在Internet Explorer瀏覽器,而不是在所有Chrome和Firefox瀏覽器中工作必應地圖V8不適用於IE,Chrome和Firefox

    這裏是我使用的加載兵地圖

    <html xmlns="http://www.w3.org/1999/xhtml"> 
        <head> 
         <script type='text/javascript' src='http://www.bing.com/api/maps/mapcontrol'></script> 
         <!--<script type='text/javascript' src='http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0'></script>--> 
        </head> 
        <body> 
    
         <div id="divMapView" style="width:800px;height:500px"></div> 
    
         <script type="text/javascript"> 
          var map = new Microsoft.Maps.Map(document.getElementById('divMapView'), { 
           credentials: 'My Bing Maps Key' 
          }); 
         </script> 
    
        </body> 
    </html> 
    
    代碼

    我還應該做些什麼來讓我的代碼適用於所有瀏覽器?

    回答

    1

    我得到了這個問題一個兩種解決方案用於同步,另一個用於異步加載

    1-對於同步負載:加載的「的onload」頁面事件地圖

    <html xmlns="http://www.w3.org/1999/xhtml"> 
        <head> 
         <script type='text/javascript' src='http://www.bing.com/api/maps/mapcontrol'></script> 
         <!--<script type='text/javascript' src='http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0'></script>--> 
        </head> 
        <body> 
    
         <div id="divMapView" style="width:800px;height:500px"></div> 
    
         <script type="text/javascript"> 
          var loadMap = function() { 
           var map = new Microsoft.Maps.Map(document.getElementById('divMapView'), { 
            credentials: 'My Bing Maps Key' 
           }); 
          } 
    
          window.onload = loadMap; 
         </script> 
    
        </body> 
    </html> 
    

    2-對於異步負載:它可以正常工作,沒有問題

    <html xmlns="http://www.w3.org/1999/xhtml"> 
        <head> 
         <script type='text/javascript' src='http://www.bing.com/api/maps/mapcontrol?callback=GetMap' async defer></script> 
         <!--<script type='text/javascript' src='http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0'></script>--> 
        </head> 
        <body> 
    
         <div id="divMapView" style="width:800px;height:500px"></div> 
    
         <script type="text/javascript"> 
            function GetMap() { 
             var map = new Microsoft.Maps.Map(document.getElementById('divMapView'), { 
              credentials: 'My Bing Maps Key' 
             }); 
            } 
         </script> 
    
        </body> 
    </html> 
    
    +0

    這是荒謬的,這些方法是必需的。您的原始代碼*應該*支持開箱即用。 –

    相關問題