2011-10-12 105 views

回答

2
  • 你需要在你的佈局的JavaScript文件的谷歌地圖:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3.5&sensor=false&amp;libraries=geometry"></script> 
<script type="text/javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/tags/infobox/1.1.5/src/infobox.js"></script> 
<script type="text/javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplus/2.0.1/src/markerclusterer.js"></script> 
<script type="text/javascript" src="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/richmarker/src/richmarker-compiled.js"></script> 
  • 地圖創建得益於window.onload回調。由於該頁面已經加載,因此失敗。所以,你必須在你的application.js添加一個jQuery Mobile的回調:

$( '#gmaps')生活( 'pageshow',函數(事件){

Gmaps.loadMaps(); 

});

  • 如果你想要這個工作,你有一個ID設置爲包含谷歌地圖的頁面:
<div class="page" data-role="page" id="gmaps"> 
  • 最後,你必須避免重複加載腳本,請將您的電話更改爲gmaps4rails幫手:

<%= gmaps4rails(@json,假的,假的)%>

+0

請注意,現在你應該通過你的JSON'裏面:腳本=>:的none'而不是添加單獨的參數gmaps4rails。否則它對我很好(我通過查看源代碼也得到了所需腳本文件的更新版本,它稍微更新了)。再次感謝您爲這樣一個偉大的寶石! – viniciusnz