Загрузка страницы Ajax в rails 3 нарушает другие функции javascript ..?

#javascript #jquery #ruby-on-rails #ajax #ruby-on-rails-3

#javascript #jquery #ruby-on-rails #ajax #ruby-on-rails-3

Вопрос:

Итак, я использую http://code.drewwilson.com/entry/tiptip-jquery-plugin для подсказок в моем приложении.

Когда страница загружается, она отлично работает. Если я загружаю новую страницу через ajax, всплывающие подсказки на новой странице просто не отображаются.

Есть идеи по поводу того, что может нарушать что-то подобное?

Ответ №1:

Когда вы говорите это:

 $(".someClass").tipTip();
  

Привязка всплывающих подсказок к некоторым элементам выполняется немедленно и обращает внимание только на те элементы, которые в данный момент находятся на странице. Если вы загружаете некоторые новые элементы с помощью вызова AJAX, вам придется привязываться tipTip ко всему в новом HTML. Какие бы вызовы AJAX, которые вы используете, не должны иметь успешного обратного вызова, вы можете предоставить обратный вызов, который повторно выполнит .tipTip() вызов для нового HTML-кода при вставке его на страницу.

Комментарии:

1. Это имеет смысл — мне нужно будет попробовать это, когда я вернусь домой вечером, спасибо!

Ответ №2:

В настоящее время Rails использует prototype по умолчанию, поэтому для всего, что использует jQuery, если вы не используете gem, требуется это:

http://docs.jquery.com/Using_jQuery_with_Other_Libraries

Я предполагаю, что вы используете синтаксис $ ( … поэтому просто замените $( на jQuery( и вызовите jQuery.noConflict(); в начале плагина.

Надеюсь, это поможет.