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
Форумы портала PHP.SU :: Версия для печати :: Обработка click по кнопке bootstrap?
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Обработка click по кнопке bootstrap?

Страниц (1): [1]
 

1. Viper - 16 Июля, 2014 - 18:36:25 - перейти к сообщению
Собственно есть html
CODE (html):
скопировать код в буфер обмена
  1. <h5 class="page-header item-title" style="margin-left: 5px;">
  2.         <a href="/journal/index.php?option=com_journal&view=category&id=9&Itemid=104&lang=ru"> Журналы</a>
  3.                 <a class="btn btn-mini pull-right" data-toggle="collapse" href="#category-9">
  4.                         <span class="icon-plus"></span>
  5.                 </a>
  6. </h5>
  7. <div id="category-9" class="collapse fade">
  8.         // Тут такая же структура повторяется 4 раза, но с разными id.
  9. </div>


нужно чтобы <span class="icon-plus"></span> менялось на <span class="icon-minus"></span> если div#category-9 раскрыт.

Проблем отловить клик по кнопке нету.

CODE (javascript):
скопировать код в буфер обмена
  1. $('.pull-right').click(function(){
  2.         console.log(1);
  3.         //$('span', this).attr('class', 'icon-minus');
  4. });


Проблема в том что при нажатии 1 раз click срабатывает 5 раз. И даже если кликать по вложенным кнопкам все равно по 5 раз срабатывает.

Не могу понят в чем грабли...

PS! Bootstrap 2.3.2
PS1! Даже если обработать $('div#category-9').on('showen', function () {... то срабатывает 3 раза...
2. Panoptik - 16 Июля, 2014 - 18:46:55 - перейти к сообщению
вот этот код
CODE (javascript):
скопировать код в буфер обмена
  1. $('.pull-right').click(function(){
  2.         console.log(1);
  3.         //$('span', this).attr('class', 'icon-minus');
  4. });

находится внутри какого обработчика события?
3. Viper - 16 Июля, 2014 - 18:50:14 - перейти к сообщению
Panoptik
CODE (javascript):
скопировать код в буфер обмена
  1. jQuery(document).ready(function($){...
4. nerv - 17 Июля, 2014 - 13:34:43 - перейти к сообщению
Viper пишет:
Проблема в том что при нажатии 1 раз click срабатывает 5 раз. И даже если кликать по вложенным кнопкам все равно по 5 раз срабатывает.

значит ты навешиваешь обработчик 5 раз

CODE (javascript):
скопировать код в буфер обмена
  1. console.log(2);
  2. $('.pull-right').click(function(){
5. Viper - 17 Июля, 2014 - 18:29:06 - перейти к сообщению
Все. Разобрался. От недосыпа не заметил что шаблон загружался несколько раз. Радость

 

Powered by ExBB FM 1.0 RC1