0

我有一個軌3.1應用在主頁(RHTML文件)這個簡單的代碼,的Rails 3和谷歌地圖API V3不兼容性

  • 如果我運行在一個HTML相同的代碼文件,它的工作原理。
  • 如果我在我的rails應用程序中運行它,它不會我沒有使用螢火蟲發生任何錯誤。

另外:我有jquery-rails寶石。 可能是什麼問題?

 <script type="text/javascript" 
     src="http://maps.googleapis.com/maps/api/js?sensor=false"> 
    </script> 

    <script> 
    jQuery(document).ready(function() { 
     init(); 
    }); 
    </script> 

    <script type="text/javascript"> 
     function init() { 
     var latlng = new google.maps.LatLng(-34.397, 150.644); 
     var myOptions = { 
     zoom: 8, 
     center: latlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
     } 
    </script> 

然後我有我的div:

<div id="home"> 
     <div style="width:100%;height:400px" id="map_canvas"></div> 
    </div> 

這個CSS:

#home #map_canvas { 
    width: 100%; 
    height: 400px; 
    position: relative; 
    left: 0px;  
} 
+0

其他信息: 我只看到地圖一會兒就消失了。 – Andrea

回答

1

聽起來像其他一些JS和/或CSS這是相互矛盾的。

PS:不確定爲什麼要在CSS聲明中指定樣式寬度和高度。只需要其中一個,雖然沒有重複的傷害。

+0

鄧肯是對的,我想。發生的事情是另一個div由於CSS而覆蓋它(這就是爲什麼你看到它出現然後消失)。通過暫時從CSS文件中刪除#map_canvas來查找問題並執行檢查元素/查看源代碼以查看地圖區域是否顯示在您的代碼中(它應該),嘗試沒有任何CSS。 – jschorr

+0

謝謝,但行爲不會改變(我試圖刪除CSS ** **)。軌道能做錯事嗎? – Andrea

+0

所以當你禁用CSS時,你看到地圖還是閃爍然後消失? – duncan