![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| m_maxser |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 5.2.2008 Репутация: нет Всего: нет |
Здравствуйте.
Есть проект на Kohana 3. Проект достаточно крупный, много jquery скриптов. Проблема в том, что они не всегда отрабаывают. Это происходит не часто (примерно каждый двадцатый раз), но пользователи замечают. Используются: 1 jquery 1.8.1, 2 UI 1.8.24 2.1 dialog 2.2 tabs 2.3 datepicker 2.4 timepicker 3 elastic 4 ajaxForm 5 и др. Сейчас это работает так: Пользователь видит страницу, на ней несколько табов. Переходит на какой-нибудь из них. Видит таблицу с записями. В таблице три вида кнопок ("добавить запись", "редактировать" и "удалить") вызывающих ajax-функцию. Кнопки "добавить" и "редактировать", открывают модальное-окно (ui.dialog). В этом окне куча полей, среди них 4 поля выбора даты (ui.datepicker). Пользователь заполняет поля, нажимает сохранить. Форма отправляется с помощью ajaxForm, таблица обновляется. Все отлично работает. Но иногда... Пока заметил, что не отрабатывают штуки связанные с UI. Например datepicker. Я кликаю по полю, появляется красивый ui-календарь. Я выбираю дату, но дата не попадает в input и страницу "подбрасывет", как-будто я перешел по ссылке-якорю. Второй вариант это ui.dialog. Я нажимаю сохранить, форма отправляет ajax-запрос, но само окно остается, хотя должно произойти .dialog("close"). У нормальных людей проблем не возникает. Они просто перезагружают страницу и все. Но со стороны заказчика есть всякие ... Они ставят своей целью меня замучить. Это даже смешно Согласен, ситуация неприятная. Все должно работать нормально. FireBug не выдает никаких ошибок. НИГДЕ! Просто некоторые вещи не отрабатывают. P.S.: Проект изначально делала другая компания, потом у них кончился договор на поддержку и они отказали его продлевать (теперь догадываюсь почему). Код очень чистый, красивый. Мы делали глубокое изменение некоторых модулей, и добавили два своих. P.P.S: Проблема с datepicker'ом была до наших изменений, только ее никто е замечал. |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Может память течет? Для Javascript - явление, можно сказать,типичное. Проверить несложно - просто посмотреть на используемую броузером память в динамике. Если глюки имеются и в Chrome - смотреть родным хромовским инструментом.
Статеек много, вот, например - одна из первых в выдаче гугла `как проверить утечки памяти javascript`. Оттуда - совет про jQuery...
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| m_maxser |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 5.2.2008 Репутация: нет Всего: нет |
ksnk
Спасибо, причина действительно была в утечке памяти. Добавил кое-куда .remove() и все |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |