2011-10-12 103 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