2011-05-21 65 views
0

修复:查看下面的内容Google地图v3,Chrome上的MarkerClusterer&jQuery无法正常工作

ok。所以这里是我的应用程序。

http://libwiki.heroku.com/libraries

,如果你使用Firefox或Safari浏览它,它显示正确。目标是在谷歌地图上显示澳大利亚的图书馆清单。我还将“MarkerClusterer”插件放在顶部,以便将标记聚集在一起。

当我在Chrome浏览器中查看该网站时,标记并未显示。

所以在查看代码后,我发现Chrome无法正确响应。这是片段。

function get_libraries() 
{ 
    if(markerCluster != null) { 
    markerCluster.clearMarkers(); 
    } 

    get_boundaries(); 
    $.post("/get_libs", { top_lat:top, right_long:right, 
         bottom_lat:bottom, left_long:left }, 
         function(data) 
         { 
          alert('hello??'); 
         } 
); 
} 
在get_boundaries

()方法,我抢在地图的边界,这是我传递给我的Rails应用之一,所以,我只能得到中给定边界的库。不管怎么说,警告“hello”消息在FF和Safari中正确显示,但在Chrome中没有消息。

这是为什么呢?有什么我需要做的以迎合Chrome?

我已经完成了我的搜索并在这里找到了类似的问题(http://stackoverflow.com/questions/4086837/markerclusterer-not-working-only-in-webkit-chrome-and-safari-fine- in-firefox),我应用了这个建议,但没有成功。

编辑 -

好的。我试过特罗特的建议,但无济于事。我只比较了Firefox和Chrome之间Rails控制台的输出。

在Firefox,我得到的东西像下面

++++++++++++++++++++++++++++++++ 入门GET“/ libraries”for 127.0.0.1 at 2011-05-23 20:42:30 +1000 通过LibrariesController处理#index为HTML 渲染库/ _header.rhtml(0.7ms) 渲染库/ _footer.rhtml(0.3毫秒)内的布局/库 渲染库/ index.html.erb(5.7ms) 完成200 OK在9ms的(浏览次数:8.2ms | ActiveRecord的:0.0ms)

开始POST “/ get_libs” 为127.0.0.1在20 11-05-23 20:42:31 +1000 LibrariesController#get_libs处理为 参数:{“top_lat”=>“ - 3.8857201725875936”,“right_long”=>“159.3671875”,“bottom_lat”=>“ - 46.20993271642981 (“经度”> 106.6328125和经度< 159.3671875)“,”left_long“ OR(经度> 106.6328125,经度> 159.3671875,经度> 0和106.6328125> 159.3671875)或(经度< 106.6328125和经度< 159.3671875和经度< 0 AND 106.6328125> 159.3671875))) +++++++++++ +++++++++++++++++++++

我想上面的重要一点是在FF上,正在执行jQuery“post”方法。但是,当我去Chrome浏览器时,我只能看到下面。

++++++++++++++++++++++++++++++++ 开始GET “/库” 为127.0.0.1,在2011- 05-23 20:35:44 +1000 通过LibrariesController#index处理HTML 渲染库/ _header.rhtml(25.9ms) 渲染库/ _footer.rhtml(0.3ms) 渲染库/ index.html.erb内布局/库(59.1ms) 在90ms内完成200次(观看次数:89.1ms | ActiveRecord:0.0ms) +++++++++++++++++++++++++ +++++++

为什么Chrome不执行我的jQuery“post”?

+0

发生此问题时,Chrome控制台中是否存在JavaScript消息? – Trott 2011-05-21 16:34:20

回答

1

从我在控制台看到的内容来看,当您访问为应用提供的链接时,您会被可能出现jQuery的Rails 3问题困扰。请阅读http://www.justinball.com/2011/03/11/get-jquery-working-with-ruby-on-rails-3/

根据该网页,解决的办法是:

原来,因为我使用jQuery我 需要得到rails.js文件 jQuery的。有一个包装它 了宝石:

https://github.com/rails/jquery-ujs

你也可以得到的JavaScript 和rails.js转储: https://github.com/rails/jquery-ujs/raw/master/src/rails.js

+0

嘿特罗特,你是冠军!我会给那个前面的。事实上,我确实看过Chrome控制台,看看发生了什么,它抱怨rails.js,所以我完全摆脱了它。但看起来我需要做的不仅仅是摆脱它。我会试试这个。谢谢! – ericbae 2011-05-22 05:37:19

+0

@ebae,如果事实证明这是正确的答案,您应该接受它 – mkoryak 2011-05-23 00:56:13

+0

hm。试过了。但仍然没有运气。爱找到更多的建议。 – ericbae 2011-05-23 10:37:59

0

FIXED:嗯。这完全出乎意料。无论如何。我使用关键字“顶部”,“左”,“右”和“底部”作为变量名称。并且它看起来像Chrome不喜欢这样。这是因为还有其他与Chrome冲突的JS文件?我试图做一些搜索,但找不到任何东西。但无论如何,现在,我已将变量名称更改为“top_bound”,“left_bound”等。现在它的行为方式与我所期望的相同。