Google Map v3, MarkerClusterer и jQuery в Chrome не работают - PullRequest
0 голосов
/ 21 мая 2011

ИСПРАВЛЕНО: СМ. НИЖЕ

ОК.так вот мое приложение.

http://libwiki.heroku.com/libraries

, если вы просматриваете его в Firefox или Safari, оно отображается правильно.Целью является отображение списка библиотек в Австралии на карте Google.Я также поместил плагин «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, так что я получаю только библиотеки WITHIN с заданными границами.

в любом случае.сообщение «Привет» отображается правильно в FF и Safari, но в Chrome сообщение отсутствует.

Почему это так?Есть ли что-то еще, что мне нужно сделать, чтобы обслуживать Chrome?

Я уже выполнил поиск и нашел здесь аналогичный вопрос (/3862435/markerclusterer-ne-rabotaet-tolko-v-webkit-chrome-i-safari-horosho-v-firefox),, и я применил предложение, но безуспешно.

EDIT -

хорошо, я попробовал предложение Тротта, но безрезультатно. Я просто сравнил вывод консоли Rails между Firefox и Chrome.

В Firefox я что-то получаюкак показано ниже

++++++++++++++++++++++++++++++++ Started GET "/ library" для 127.0.0.1в 2011-05-23 20:42:30 +1000 Обработка с помощью LibrariesController # index в виде HTML. Отрисованные библиотеки / _header.rhtml (0,7 мс). Отрендеренные библиотеки / _footer.rhtml (0,3 мс.). Отрисованные библиотеки / index.html.erb в макетах./ library (5.7ms) Выполнено 200 OK за 9 мс (Просмотров: 8.2 мс | ActiveRecord: 0.0 мс)

Запущен POST "/ get_libs" для 127.0.0.1 2011-05-23 20:42:31 +1000 Обработка с помощью LibrariesController # get_libs в качестве параметров: {"top_lat" => "- 3.8857201725875936", "right_long" => "159.3671875", "bottom_lat" => "- 46.20993271642981 "," left_long "=>" 106.6328125 "} Загрузка библиотеки (1238,5 мс) ВЫБРАТЬ" библиотеки ". * ИЗ" библиотек "ГДЕ (широта <-3.8857201725875936 И широта> -46.20993271642981 И ((долгота> 106.6328125 И долгота <159.36775)ИЛИ (долгота> 106.6328125 И долгота> 159.3671875 И долгота> 0 И 106.6328125> 159.3671875) ИЛИ (долгота <106.6328125 И долгота <159.3671875 И долгота <0 И 106.6328125> 159.3671875))) +++++++++++++++++++++++++++++++

Полагаю, важная часть выше - это то, что на FF выполняется jQuery "post" метод.Однако, когда я перехожу в Chrome, я получаю только ниже.

++++++++++++++++++++++++++++++++++++++++++++++ Запущен GET "/ library" для 127.0.0.1 в 2011-05-23 20:35:44 +1000 Обработка с помощью LibrariesController # index в виде HTML-файлов) Обработанные библиотеки / index.html.erb в макетах / библиотеках (59,1 мс). Выполнено 200 ОК за 90 мс (просмотров: 89,1 мс | ActiveRecord: 0,0 мс) ++++++++++++++++++++++++++++++++

Почему Chrome не выполняет мою "публикацию" jQuery?

Ответы [ 3 ]

1 голос
/ 22 мая 2011

Судя по тому, что я вижу в консоли, когда я перехожу по ссылке, которую вы предоставляете для своего приложения, вас укусила проблема с Rails 3, которая может возникнуть с jQuery.Прочтите об этом по адресу 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 голосов
/ 23 мая 2011

ки.вот.некоторые зарезервированные слова Javascript просто запрещены в Chrome.

http://www.quackit.com/javascript/javascript_reserved_words.cfm

0 голосов
/ 23 мая 2011

ИСПРАВЛЕНО: Хм.это было совершенно неожиданно.тем не мение.я использовал ключевые слова "top", "left", "right" и "bottom" в качестве имен переменных.и похоже, что Chrome не нравится это.это потому, что есть другие JS-файлы, с которыми конфликтует Chrome?Я пытался сделать поиск, но ничего не смог найти.Но в любом случае, сейчас я изменил имена своих переменных на "top_bound", "left_bound" и т. Д. И теперь он ведет себя так, как я ожидаю.

...