2010-10-14 46 views
0

我已經創建了一個SharePoint 2010 WebPart,它可以從列表中拉取緯度/經度信息,並在地圖中顯示針跡。我在地圖在IE7中無法正確呈現的問題。即使我沒有使用任何針腳並只顯示基本地圖。這裏有一個截圖:ScreenshotBing地圖控件在IE7中無法正確呈現 - SharePoint 2010

我儘可能簡化了代碼,並且仍然出現錯誤。這裏是我的示例代碼:

<script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script> 
<div id='rowanMap' style="position:relative; width:100%; height:400px; float:none;"></div> 
<script type="text/javascript"> 
function GetMap() { 
    var map = null; 
    map = new VEMap('rowanMap'); 
    map.SetCredentials("[Redacted]"); 

// pins added programatically here if they exist, but problem occurs without them as well. 

    map.LoadMap(); 
} 

GetMap(); 
</script> 

這被添加到頁面作爲一個可視的webpart。

我知道這不是我的版本IE7的,因爲這個演示工作在第二個選項卡加載時:http://www.microsoft.com/maps/isdk/ajax/

此外,火狐,Chrome,IE8,IE9都正常工作。

任何想法?

回答

0

我想出了一個解決方法。看來這個問題是的GetMap()函數運行在頁面加載完畢之前,因此增加超時解決了這個問題:

setTimeout("GetMap()", 50); 

我使用在window.onload方法試過,但它改寫了一些必要的SharePoint的javascript 。幸運的是即使時間很短,超時仍然有效。