Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Странное поведение jquery
По этому коду при нажатии на кнопку должна меняться и картинка и надпись на кнопке.
При первом запуске страницы при нажатии на кнопку запускается функция showRabbit, меняет картинку и текст кнопки.
Далее снова жмем и запускается функция hideRabbit, меняет картинку и текст кнопки.
И снова жмем кнопку уже ничего не происходит, хотя должна вызываться функция showRabbit. Консоль не выводит ошибку.
RickMan
Отправлено: 09 Января, 2015 - 23:03:47
Участник
Покинул форум
Сообщений всего: 1033
Дата рег-ции: Май 2012
Помог: 30 раз(а)
http://jsfiddle[dot]net/gregurco/L6th6pwv/ - посмотри, я твою задачу как-то так решил. Но вообще, проблема была в том, что ты навешиваешь новые обработчики клика, при этом старые не убираешь, и после третьего нажатия там уже срабатывает несколько раз поочередно функции. И вообще, советую установить себе firebug и научиться дебажить js. Ну и пользоваться jsfiddle.
lawer85
Отправлено: 09 Января, 2015 - 23:39:53
Частый гость
Покинул форум
Сообщений всего: 189
Дата рег-ции: Янв. 2013
Помог: 1 раз(а)
У меня была мысль об удалении событий, но не все я учел. Теперь работает. Я обошелся без
$('#hocusPocus').on('click', showRabbit);
armancho7777777
Отправлено: 10 Января, 2015 - 01:05:15
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.