@sergemin

Ошибка Uncaught TypeError: $target.find is not a function Почему не работают методы?

Друзья, около двух недель работаю с jQuery и такой вопрос возник. Есть список элементов. Если я обращаюсь напрямую к какому-либо элементу, то я могу применять к нему все методы, но если я вешаю обработчик на весь список (так называемое делегирование событий) или использую метод each(), то я получаю эту ошибку
Ошибка Uncaught TypeError: $target.find is not a function

Вот сам код

html
<ul id='myList'>
  <li></li>
  <li></li>
  <li></li>
  <li></li>
</ul>


jQuery
$('#myList').bind('click', function(event) {
        var $target = event.target;
        if($target.tagName !== 'LI') return;
        
        var $currentPersonMenu = $target.find('.personMenu'); // тут ошибка! Не работает метод
        console.log($currentPersonMenu);
    })


то есть я не могу обратиться ни к дочерним элементам, ни использовать другие методы, такие, как find(), closest(), ect.

Заметил, что если обращаюсь к элементу напрямую, то если его вывести в консоль, получаю элемент в виде объекта, а если через делегирование, то просто в виде тега выдает консоль его
  • Вопрос задан
  • 752 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы