我有以下问题。我在 Ruby on Rails 中有一个谷歌地图(使用 YM4r + Geokit),无论如何,我基本上有一个标记数组,它们以以下方式填充

@shops.each do
|sto|
     markers << GMarker.new (....)
end

它们肯定存储得很好,因为少于 10 个标记它们显示得很好。当同一页上有超过 10 个标记时就会出现问题,

与显示相关的更多代码(如果这可能有帮助):

@map.overlay_global_init(GMarkerGroup.new(true, markers), "sto_markers")

在 html.erb 文件中:

<%= GMap.header %>
<%= javascript_include_tag("markerGroup") %>
<%= @map.to_html%>
<%= @map.div(:width => 700, :height => 500)%>

屏幕上仅显示 10 个标记,而不是标记数组中的正确数量。

请问有人遇到过这个问题吗?我真的不知道如何克服这个问题

有帮助吗?

解决方案

嗯,我从来没有使用过这些插件(我更喜欢直接使用 API,更容易:)),所以这只是随机的想法。

您查看过渲染的 HTML 的源代码吗?在那里你应该有一个 Javascript 对象或数组,其中定义了所有标记。如果所有这些都出现在那里,那么就更容易查明问题是在 Javascript 还是 Rails 方面。(这就是 <%= @map.to_html%> 除非我完全关闭,否则应该这样做)。

更新:

在研究了该插件之后,我无法真正判断出错误是什么,但是由于它确实以清晰的 Javascript 形式将所有内容都放在文件中,因此如果您可以发布渲染的 HTML 源代码,它可能会有很大帮助。我相信你看了那里就会找到解决方案。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top