@mlbot

Почему выдает такую ошибку?

Проблема в том что вроде все вроде как работает.
сайт прокручивает
В консоль выводит все что надо.
Но вот эта строка выдает ошибку
If(menuLink.dataset.goto && document.querySelector(menuLink.dataset.goto)) 
{}

что бы я не ставил на место вопроса.
И как бы не менял местами.
Это условие вроде как нужно. Но починить его я не могу.
Выбор или поудалять то что не работает.
Или кто-нибудь подскажет где я лопухнулся.

const menuLinks = document.querySelectorAll('.menusublink[data-goto]');

if (menuLinks.length > 0) {
 menuLinks.forEach(menusublink => {
      menusublink.addEventListener("click", onMenuLinkClick);
});
 function onMenuLinkClick(e) {
      const menusublink = e.target
      console.log(menusublink);
      const gotoBlock = document.querySelector(menusublink.dataset.goto);
      console.log(gotoBlock);
      const gotoBlockValue = gotoBlock.getBoundingClientRect().top + pageYOffset;

      console.log(gotoBlockValue);
      window.scrollTo({
         top: gotoBlockValue,
         behavior: "smooth"
      });
      If(menuLink.dataset.goto && document.querySelector(menuLink.dataset.goto))
      {
 const gotoBlock = document.querySelector(menusublink.dataset.goto);
         console.log(gotoBlock);

         const gotoBlockValue = gotoBlock.getBoundingClientRect().top + pageYOffset - document.querySelector('header').offsetHeight;


         window.scrollTo({
            top: gotoBlockValue,
            behavior: "smooth"
         });
         e.preventDefault();
      }
   }
}
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
t-alexashka
@t-alexashka
Сразу пишу legacy код
if с маленькой буквы напишите
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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