2012-06-06 12 views
1

這已被證明是Google的一件難事。我知道Google似乎應該很容易。在rails應用程序中實現JavaScript庫

我想了解如何實現好的庫,如gmaps.js

application.html.erb:

<%= javascript_include_tag :defaults %> 
<%= javascript_include_tag "gmaps" %> 

不知道如果這兩個都是必要的。我使用rails 3.2.3在我的/ vendor/assets/javascripts文件夾中有gmaps.js。我很想知道前者是否處理它。

應用程序/資產/ Java腳本/ indexmap.js:

new GMaps({ 
    div: '#map', 
    lat: -12.043333, 
    lng: -77.028333 
}); 

index.html.erb:

<div id="themap"> 
    <%= javascript_include_tag("indexmap") %> 
</div> 

application.css:

#themap{ 
    display: block; 
    width: 95%; 
    height: 350px; 
    margin: 0 auto; 
    -moz-box-shadow: 0px 5px 20px #ccc; 
    -webkit-box-shadow: 0px 5px 20px #ccc; 
    box-shadow: 0px 5px 20px #ccc; 
} 

我得到的是一個空白框。

回答

1

嘗試使用「:gmaps」而不是「gmaps」。

此外,請嘗試右鍵單擊檢查框,並查看JS是否在Chrome的檢查器中拋出錯誤。

OK-更新,計算出來。

您需要使用Google Maps和JQuery才能使其工作。本身沒有CSS,您需要在jQuery文檔就緒塊中建立對象。我有zipped a sample of this working (in a basic rails app)

本質上,包括jQuery和地圖上的gMaps.js以上,然後包括一些JS:

<server type="text/javascript"> 
$(document).ready(function(){ 
    map = new GMaps({ 
    div: '#map', 
    lat: -12.043333, 
    lng: -77.028333 
    }); 
}); 
</script> 
<div id="map" style="height:200px;width:200px;"></div> 
+0

感謝。冒號沒有幫助。這是生成的HTML,如檢查員所見: blaha

+0

但是在JS控制檯中沒有錯誤? –

+0

啊,include標籤應該是「indexmap」(js文件的名稱),用引號引起來,你說得對。 –

相關問題