我试图将下一部分JS代码转换为JQuery,但是它不起作用。你能帮忙吗 ?



function initUpdateNavbarOnScroll() {
  var navbarc = document.querySelectorAll('#site-navigation-wrap .dropdown-menu>li>a');
  window.addEventListener('scroll', () => {
    if (window.scrollY >= window.innerHeight) {
      navbarc.classList.add('darklinker');
    } else {
      navbarc.classList.remove('darklinker');
    }
  });
}

initUpdateNavbarOnScroll();





如果有帮助,我已经尝试过其他方法,但其中任何一个都可以...



// ​$( "#site-navigation-wrap .dropdown-menu>li>a" ).on( "scroll", function( event ) {
//     var navbarc = $( this );
//     if (window.scrollY >= window.innerHeight) {
//       navbarc.addClass('darklinker');
//     } else {
//       navbarc.removeClass('darklinker');
//     }
// });​​​​​​​​​​​​​​​​​​​​​

// $( window ).scrollY(function() {
//   if ($( "site-navigation-wrap .dropdown-menu>li>a" )) {
//     navbarc.addClass('darklinker');
//   } else {
//     navbarc.removeClass('darklinker');
//   }
// });





谢谢。

最佳答案

function initUpdateNavbarOnScroll() {
    var navbarc = $("#site-navigation-wrap .dropdown-menu>li>a");

    window.addEventListener('scroll', () => {
      if (window.scrollY >= window.innerHeight) {
        navbarc.addClass('darklinker');
      } else {
        navbarc.removeClass('darklinker');
      }
    });
}

initUpdateNavbarOnScroll();

10-06 00:06