首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google地图未在部分视图中显示

问Google地图未在部分视图中显示
EN

Stack Overflow用户
提问于 2014-12-08 20:29:46
回答 1查看 797关注 0票数 0

我想在部分视图中显示谷歌地图,我称之为使用jQuery。以下是详细信息:

在我的dashboard.html.haml中:

代码语言:javascript
复制
= link_to 'Map', preview_map_static_pages_path,  :remote => true

.col-sm-4.col-md-10
      #dashboard_preview

在我的控制器中:

代码语言:javascript
复制
def preview_map
        respond_to do | format |
            format.js {render :layout => false}
        end
end

在我的preview_map.js.erb中

代码语言:javascript
复制
$( "#dashboard_preview" ).html( "<%= escape_javascript( render "map/map" ) %>" );

和我的地图/_map.html.haml

代码语言:javascript
复制
#map-container
  #map-canvas

问题是当我单击= link_to 'Map', preview_map_static_pages_path, :remote => true时,地图不显示。我做错什么了?对不起,我的英语不好。感谢您的帮助:)

EN

回答 1

Stack Overflow用户

发布于 2014-12-12 08:02:48

在google地图javascript运行之后,您使用javascript呈现了map/_map.html,这就是为什么您的地图不会加载的原因。尝试将google地图脚本包含到地图/_map.html.haml中

代码语言:javascript
复制
#map-container
  #map-canvas

%script(src="https://maps.googleapis.com/maps/api/js?key=API_KEY")
:javascript
  var mapOptions = {
    center: { lat: -34.397, lng: 150.644},
    zoom: 8
  };
  var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

另一种选择是在preview_map.js.erb中呈现map/_map之后调用google地图初始化函数

代码语言:javascript
复制
$( "#dashboard_preview" ).html( "<%= escape_javascript( render "map/map" ) %>" );
var mapOptions = {
  center: { lat: -34.397, lng: 150.644},
  zoom: 8
};
var map = new google.maps.Map($("#map-canvas")[0], mapOptions); 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27358065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档