Tag: google maps

警告:忽略从异步加载的外部脚本调用document.write()。 这是如何解决的?

在我的Ruby on Rails应用程序中,我使用Facebox插件进行Ajax弹出窗口。 我有2个页面叫做add_retail_stores/new.html.erb和add_retail_stores/new.js new.js页面inheritance了new.html.erb页面中的所有元素,因此它看起来完全相同。 我在HTML页面上有一个Google地图脚本,可以正常工作。 但是在我的不同页面上弹出的new.js页面名为add_store_prices.html.erb页面( true %> ) 我收到错误: 警告:忽略从异步加载的外部脚本调用document.write()。 源文件: http:// localhost:3000 / add_store_prices行:0 我相信因为它试图通过2个函数/脚本。 第一个是Facebox,然后是Google脚本。 有谁知道如何处理这个错误? 编辑: 我相信Facebox插件正在使用document.write但我不确定在哪里,也许在我页面上的这2行之一? new.js: $.facebox(‘ ‘business_retail_stores/new.html’) %>’) $(‘#facebox form’).data(‘remote’,’true’);

在gmaps4rails中,如何移动地图以便标记在视图中?

我有一组我希望通过ajax调用单独调出的位置,其中一些位置不在地图的当前范围内。 有没有办法移动地图,以便标记在视野中? 我不需要它在中心,只要它在视野中。

Rails:Gmaps4rails获取路线并在地图上显示

我已经在我的应用上实现了gem ‘gmaps4rails’ 。 我在动态标签内显示一个带有两个标记的地图,一个用于当前位置(dd-start.png),另一个用于目标位置(dd-end.png)。 这是当前的设置: def show @item = Item.find(params[:id]) respond_to do |format| format.html format.js { render ‘show.js.erb’ } end @hash = Gmaps4rails.build_markers(@item) do |item, marker| marker.lat item.latitude marker.lng item.longitude marker.picture({ :url => “https://www.google.com/mapfiles/dd-end.png”, :width => 32, :height => 32 }) marker.infowindow render_to_string(:partial => ‘pages/info_page’) end append_cur_location end # method to show current location marker […]

通过Ajax使用gmaps4rails渲染谷歌地图

我想仅按需渲染地图(以最小化加载时间),意味着像“显示地图”这样的链接应该在指定的div中渲染地图。 我该怎么办?

Gmaps4rails:缩放(不缩放)gmap

我正在使用gmaps4rails,我有一组动态生成的标记,大约14个,我在全球范围内显示。 我使用auto_adjust它看起来不错,但是,我为地图选择的大小似乎完全适合两个缩放级别。 它要么显示太多的地图(例如你在两侧看到亚洲),要么我放大一个级别,我没有看到一些标记。 我们选择的css宽度和高度是我们想要适合窗口的东西。 较小或较大(以匹配两个缩放级别)看起来不太好。 目标是,更大的图像,但保持相同,固定,缩放。 有没有办法缩放地图,就像你可以用图像一样? 我使用rails 2.3.11并且必须复制js / css资产并修改/覆盖gmaps4rails视图。 我没有使用gmapable模块。

gmaps4rails和自动完成谷歌API不兼容

我在gmaps4rails gem和google place API之间存在兼容性问题 基本上,如果我在我看来这样的gmpas4rails: 然后这个脚本不再工作了(它正常激活user_address字段上的自动完成: $(document).ready(initialize_gmaps_autocomplete_user_address()); function initialize_gmaps_autocomplete_user_address() { var input = document.getElementById(‘user_address’); var defaultBounds = new google.maps.LatLngBounds(new google.maps.LatLng(42.71422,-4.222666), new google.maps.LatLng(51.179343,8.47412)); var autocomplete = new google.maps.places.Autocomplete(input); autocomplete.setBounds(defaultBounds); autocomplete.setTypes([‘geocode’]); } 我试图通过gmaps4rails.call_back调用脚本并更改脚本中的var名称… 任何的想法?

Rails 5 – 谷歌地图 – Javascript错误 – initMap不是一个function – 修复一个js问题创建另一个

我多年来一直试图弄清楚如何在我的Rails应用程序中使用谷歌地图。 我目前正在尝试使用Rails 5。 我一直在试图弄清楚如何让我的javascript在生产环境中工作。 我在这个生产问题post和谷歌地图post中概述了我最近对这些挑战的尝试。 在长代码会话之后,生产环境javascript问题似乎已通过移动解决: 从头标签到身体标签的末尾。 但是,在这样做,谷歌地图javascript现在不起作用。 它给出了一个错误: initMap is not a function 我见过很多其他人提出这个问题,包括这里 。 我已经尝试了这篇文章中概述的解决方案,即替换此脚本: <script src="https://maps.googleapis.com/maps/api/js?key=&callback=initMap” async defer> –> 在我的地址视图文件中使用此脚本: <script type="text/javascript" src="http://maps.google.com/maps/api/js?key=” async defer> 关键的区别是删除了“&callback = initMap”。 这在控制台检查器中没有出现任何错误。 但是,它也不显示地图。 我通过修复生产问题创建了一个新问题。 任何人都可以看到我需要做什么才能获得谷歌地图渲染(不破坏生产环境js)?

Link_to标签显示地图模态Rails 5

当我点击地图标记时,会弹出一个模态: 我刚刚实现了一个搜索function,当我点击一个结果时,我试图获得它,所有信息的模态将像照片一样弹出。 这是我正在为该页面使用的代码: MapsController: class MapsController map.id, :number => map.number, :name => map.name, :tabid => map.tabid, :zipcode => map.zipcode, :latitude => map.latitude, :longitude => map.longitude }) end end def favorite @map = Map.new(:number => ‘Favorite Site’) @map.save redirect_to :back flash[:success] = “favorited” end def show @maps = Map.find(params[:id]) end end SearchController: class SearchController map.id, :number […]

如何使用ruby获得两个坐标之间的汽车路线?

我正在使用谷歌地图和汽车路线开发rails应用程序。 我有一个汽车路线的起点和终点 – 两个坐标。 如何获得完整的汽车路线(汽车通过街道的坐标系列)? 我可以使用gmaps4rails和geocoder吗? 像这样的东西: start_point = [41,2423; 45,323452] end_point = [42,2423; 42,323452] full_route = some_method_for_calculate_route( start_point, end_point ) #paint line on map from array of points paint_line( full_route ) 请帮忙,谢谢你:)

Rails3 Google Maps使用selenium进行测试

我正在尝试使用Rails3测试谷歌地图应用程序。 我正在使用带有水豚和selenium的黄瓜进行JavaScript测试。 我有一张地图,我等待加载谷歌地图,然后发送一个ajax请求到我的服务器,在那里我得到我插入地图的位置。 我想知道是否可以使用selenium等到加载谷歌地图,完成对我的服务器的ajax调用并将标记放在地图内。 另一个问题是,如何在谷歌地图中选择此标记。 有选择器吗? 或者我应该走另一条路,并使用像Jasmine这样的JS测试框架来测试我的类是否已加载等等。 我对Jasmine没有任何经验,所以可以测试谷歌地图吗? 也许有人知道解决方案,或提示是否可行,或解决方法或……;) [更新1] 我已经找到了如何在谷歌地图中选择标记。 如果你看看googles selenium测试你可以看看他们在做什么。 例如,选择标记: waitForElementPresent xpath=//img[contains(@src,’marker’)] 但接下来是下一个问题。 如何选择特定标记? 是否有一种方法可以在javascript google maps API中为其分配ID,以便我可以使用#marker_1 , #marker_2 …? 另一个奇怪的事情是,我的黄瓜步骤定义中没有像wait_for_element或wait_for_condition这样的函数。 谷歌selenium测试是否使用自己的函数,如waitForElementPresent ? 或者这个标准的seleniumfunction是什么? 我发现了很多post,他们总是使用类似的东西 selenium.wait_for_condition selenium.wait_for_element or @selenium.wait_for_condition … 在我的步骤定义中, selenium和@selenium var a nil。 我该如何访问这些方法? 我也发现了这篇文章 ,但它是从08年10月开始的,所以我认为必须有一个更好的解决方案(顺便说一句。这个解决方案一见钟情)。 就像在这个页面上一样,他们概述了一些如何等待条件或元素的selenium方法。 这仍然存在吗? 我该如何使用这个function? [更新2] 该死的,我发现,我上面提到的selenium测试是针对谷歌地图的V2,而不是针对V3。 我试过了 wait_until { page.has_xpath?(“//img[contains(@src,’marker’)]”) } 但它不起作用。 标记在地图上可见,但是我收到超时错误,因为找不到此XPath选择器。 […]