2014-02-11 57 views
2

我試圖向web頁面添加bing地圖ajax控件(v7)。我可以使用bing地圖幫助中的樣板添加控件 - http://msdn.microsoft.com/en-us/library/gg427624.aspx,將其作爲我的地圖div。在web頁面上定位bing地圖控件

<div id='mapDiv' style="position:relative; width:400px; height:400px "></div> 

,這是我的地圖初始化:

map = new Microsoft.Maps.Map(document.getElementById("mapDiv"), 
    { 
     credentials: "BING_MAPS_KEY", 
     center: new Microsoft.Maps.Location(45.5, -122.5), 
     mapTypeId: Microsoft.Maps.MapTypeId.road, 
     zoom: 12 
    }); 

我看到的行爲,如果我用現在的位置:靜態它佔據了整個頁面,如果我使用的位置是:絕對會出現的一切去工作,但我將不得不手動定位一切(我認爲)。如果我使用position:relative,它似乎並沒有考慮到所有事情(例如,控件將重疊其先前的同級,而其後級的同級將與控件重疊)。 我是一名程序員,而不是HTML專家,所以也許有一些基本的東西我錯過了佈局屬性。

我測試了IE和Chrome中的代碼。我還注意到,地圖的渲染似乎使用了位置設置爲絕對的img標籤,所以也許我需要告訴它不要那麼做?但是我看到並沒有看到地圖控件上的屬性會幫助,但也許我錯過了某些東西?

回答

1

你應該使用相對或靜態的位置。如果渲染看起來很奇怪,您是否錯過了您提供的鏈接中記錄的所需元標記和doctype值。這是使用不同瀏覽器時出現問題的首要原因。在頁面上獲取地圖設置非常簡單。作爲附加資源,請查看交互式SDK:http://www.bingmapsportal.com/ISDK/AjaxV7如果您按下任何示例的HTML按鈕,它將爲您提供可以複製和粘貼的完整HTML。這些應該在任何主流瀏覽器中都沒有任何問題。如果您仍然看到重大渲染問題,那麼您的瀏覽器可能處於兼容模式。當這種情況發生時,IE使用IE5標準渲染頁面,這些標準不僅非常陳舊,而且還不被Bing Maps支持。