我下面的官方文檔中的簡單說明:當我打開的第一次現場https://developers.google.com/maps/documentation/javascript/tutorial谷歌地圖不顯示,直到我刷新
,一切工作正常。地圖顯示正常。問題是當我導航到網站的其他部分。在我回到地圖所在的位置後,地圖不顯示。
這裏的基本結構:
<ul>
<li><%= link_to "Home", root_path %></li>
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", contact_path %></li>
</ul>
的Javascript裏面的 「聯繫」:
<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js?key=xxx&sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
<h1>Contact</h1>
<p>
Address & phone number
</p>
<div id="map-canvas" style="width: 35em; height: 35em;"/>
所以,如果我打開 「首頁」 頁面上的網站,然後導航到 「聯繫人」,沒有地圖。但是,如果我刷新「聯繫人」網站,則會顯示地圖。什麼可能是一個問題?
謝謝。
EDIT1:
我試圖把我的代碼準備函數內部:
$.getScript('https://maps.googleapis.com/maps/api/js?key=xxx&sensor=false');
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
但是,當我這樣做,在這行代碼遊:
center: new google.maps.LatLng(-34.397, 150.644),
你用導軌4頁面加載後,我已經解決了這個觸發代碼? – apneadiving
是的,我正在使用Rails 4. – Cristiano
沒問題,所以它由於turbolinks,把谷歌腳本放在你的佈局有一個快速修復。順便說一句,我剛剛發佈了新版本的gmaps4rails,它可以幫助! – apneadiving