Всем привет.
Есть функция, которая отслеживает клики в списках и производит некоторые действия. По сути при помощи этой функции список становится аналогом select.
Есть 3 блока таких списков, у каждого свой класс прописан.
Соответсвенно в функции 3 блока, отслеживающие клик в конкретном блоке. В каждом блоке прописал console.log
Все сделал, все считает как надо, но в консоли заметил такую штуку.
При первом срабатывании функции в консоль выводится 1 сообщение.
Потом 2 одинаковых. Потом 3 одинаковых.
И так количество одинаковых выводов в консоль растет постоянно.
Начинаешь по другим спискам "ходить", вообще непонятное количество записей выводится одинаковых.
Хотя по сути должна 1 раз вывести.
Помогите разрбраться, пожалуйста.
Функция (для примера убрал лишние блоки, оставил функцию в чистом виде, без моих добавлений)
Все равно в консоли выводится сообщение ++раз
$('.slct').click(function(){
var dropBlock = $(this).parent().find('.drop');
if( dropBlock.is(':hidden') ) {
dropBlock.slideDown();
$(this).addClass('active');
$('.drop').find('li').click(function(){
var selectResult = $(this).find('a').text();
$(this).parent().parent().find('input').val(selectResult);
$(this).parent().parent().find('.slct').removeClass('active').html(selectResult);
dropBlock.slideUp();
console.log(selectResult);
});
} else {
$(this).removeClass('active');
dropBlock.slideUp();
}
return false;
});
Пример списка
<div class="select">
<a href="javascript:void(0);" class="slct">Прямоугольные стеллы</a>
<ul class="drop drop_stella">
<li><a>Прямоугольные стеллы</a></li>
<li><a>Резные стеллы</a></li>
<li><a>Двойник</a></li>
</ul>
<input name="stella" type="hidden" id="stella" value="Прямоугольные стеллы"/>
</div>