Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.07.2021, 21:55
Аспирант
Отправить личное сообщение для Самовар Посмотреть профиль Найти все сообщения от Самовар
 
Регистрация: 28.03.2017
Сообщений: 31

Легкий вопрос про привязку событий
Не могу разобраться в вобщем то с элементарной вещью, просто завис. Есть несолько Li.

<ul class="menu">
        <li class="menu-item">Один</li>
        <li class="menu-item">Два</li>
        <li class="menu-item">Три</li>
        <li class="menu-item">Четыре</li>
        <li class="menu-item">Пять</li>
        <li class="menu-item">Шесть</li>
    </ul>


Кидаю их коллекцию квери селектрором и вешаю обработку на клик

const menuBtn = document.querySelectorAll(".menu-item");

function menuBtnClick() {
    alert(this.InnerHTML);
}

for (let i = 0; i <= menuBtn.length; i++) {
    menuBtn[i].onclick = menuBtnClick;
}


и вылазит ошибка Cannot set property 'onclick' of undefined
По идее по щелчку на лишку должен вылазить текст внутри неё. Вылазит ундевайнед.
Вопроса два. Первый, откуда берется эта ошибка. Второй (полагаю является следствием первого) почему вместо текста лишки вылазит ундефайнед

Последний раз редактировалось Самовар, 04.07.2021 в 21:58.
Ответить с цитированием
  #2 (permalink)  
Старый 04.07.2021, 21:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от Самовар
Что ему не хватает?
не бывает элементов с индексом равным length!!!
Сообщение от Самовар
for (let i = 0; i <= menuBtn.length; i++)
Ответить с цитированием
  #3 (permalink)  
Старый 04.07.2021, 22:06
Аспирант
Отправить личное сообщение для Самовар Посмотреть профиль Найти все сообщения от Самовар
 
Регистрация: 28.03.2017
Сообщений: 31

вот уж да, столько времени потеряно зря. Большое спасибо. Ошибка ушла, но при щелчке так же и вылазит ундефанед вместо текста лишки
Ответить с цитированием
  #4 (permalink)  
Старый 04.07.2021, 22:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Самовар,
исправьте ошибку в 4 строке, js регистрозависимый язык!
Ответить с цитированием
  #5 (permalink)  
Старый 04.07.2021, 22:18
Аспирант
Отправить личное сообщение для Самовар Посмотреть профиль Найти все сообщения от Самовар
 
Регистрация: 28.03.2017
Сообщений: 31

спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос про change vitaly63 Общие вопросы Javascript 1 24.12.2012 10:50
Легкий вопрос по объекту DOM FRAGnat Events/DOM/Window 2 15.12.2012 21:09
Глупый вопрос про if then. Irish.Tippler Общие вопросы Javascript 9 26.07.2012 12:32
Вопрос: И опять про offsetLeft... sigurd Общие вопросы Javascript 11 04.10.2010 14:06
Вопрос про отправку данных методом Post QQQ AJAX и COMET 1 15.07.2009 23:27