forEach l oop работает для android, но не iPhone - PullRequest
0 голосов
/ 09 июля 2020

У меня есть веб-сайт с некоторыми ссылками на части страницы ниже. Чтобы реализовать на них плавную прокрутку, я использую querySelectorAll ("a"). ForEach l oop to l oop через все теги, у которых есть href, а затем добавляю eventListener для "щелчка" перед его связыванием к методу, который прокручивает страницу.

Однако в этом процессе связывания кажется, что href каждый раз связывается с одной и той же переменной, что означает, что к концу l oop все ссылки go на href последнего тега

document.querySelectorAll('a').forEach(anchor => {
    anchor.addEventListener('click', function (e) {
    scrollToElm(anchor.getAttribute("href"));
    }
}

Я думаю, что проблема в том, что все функции onClick связаны с одной и той же якорной переменной, но я не уверен, как это изменить. Он работает на Windows и Android, но не на iPhone.

Любая помощь приветствуется:)

Редактировать: страница прокручивается при нажатии любой из ссылок, они просто все прокручиваются до привязки "#top", которая является последней ссылкой на странице, поэтому я думаю, что все eventListeners связаны с одной и той же привязкой

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...