Фильтрация якорей в списке

0

У меня есть неупорядоченный список, который я представляю как дерево и переключая узлы при нажатии

$('#tv').find('.child1, .child2').click(function () {
       $(this).closest('li').find('ul').slideToggle(1000);
       return false;
});

Как отфильтровать ссылки для переключения? т.е. если какой-либо из Li имеет в себе какую-либо ссылку, нажатие на эту ссылку не должно вызывать переключения

Теги:

1 ответ

1

остановить распространение события от элемента anchor внутри li

$('#tv').find('li a').click(function (e) {
    e.stopPropagation()
});

другим решением является его фильтрация в обработчике кликов

$('#tv').find('.child1, .child2').click(function (e) {
    if($(e.target).closest('a').length == 0){
       $(this).closest('li').find('ul').slideToggle(1000);
       return false;
    }
});
  • 1
    не уверен, что это лучший способ. Я хочу иметь возможность сделать это в качестве фильтра в моем существующем коде, не влияя на производительность

Ещё вопросы

Сообщество Overcoder
Наверх
Меню