Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用scrollspy和jQuery加载时使第一个菜单项变为红色_Javascript_Jquery - Fatal编程技术网

Javascript 使用scrollspy和jQuery加载时使第一个菜单项变为红色

Javascript 使用scrollspy和jQuery加载时使第一个菜单项变为红色,javascript,jquery,Javascript,Jquery,有人能帮我写代码吗?下面的代码使我的菜单项在添加了“scrollspy”的div中呈红色滚动。但缺少了一些东西,所以我的第一个菜单项(主页)在页面加载时不会变红,只有在我向下滚动一点时才会变红。我需要把这第一件东西装上红色。我怎样才能解决这个问题 加载时激活第一个菜单项的示例代码? window.onload = function() { //code? }; 当在admin中的行上添加“scrollspy”类时,这会使菜单项变为红色 var elems = $('.scrolls

有人能帮我写代码吗?下面的代码使我的菜单项在添加了“scrollspy”的div中呈红色滚动。但缺少了一些东西,所以我的第一个菜单项(主页)在页面加载时不会变红,只有在我向下滚动一点时才会变红。我需要把这第一件东西装上红色。我怎样才能解决这个问题

加载时激活第一个菜单项的示例代码?

window.onload = function() {
      //code?
};
当在admin中的行上添加“scrollspy”类时,这会使菜单项变为红色

var elems = $('.scrollspy');
$(window).bind('scroll', function() {
  var currentActive = null;
  var currentActiveDistance = -1;
  var currentTop = $(window).scrollTop();
  elems.each(function(index) {
    var elemTop = $(this).offset().top - 102
    var id = $(this).attr('id');
    var navElem = $('.menu a[href="#' + id + '"]');
    navElem.removeClass('active');
    if (currentTop >= elemTop) {
      var distance = currentTop - elemTop;
      if (currentActiveDistance > distance || currentActiveDistance == -1) {
        currentActive = navElem;
      }
    }
  });

  if (currentActive) {
    currentActive.addClass('active');
  }
});
为什么不只用CSS呢

.nav li a.active{
背景色:红色;
}

为什么不只用CSS呢

.nav li a.active{
背景色:红色;
}

jQuery可按如下方式使用,使第一个菜单项链接为红色,即通过应用类激活

    $(document).ready(function(){
        $(".menu:first a").addClass('active');
    });

如果HTML标记与HTML不兼容,请发布它。

jQuery可按如下方式使用,使第一个菜单项链接变为红色,即通过应用类激活

    $(document).ready(function(){
        $(".menu:first a").addClass('active');
    });

如果HTML标记与HTML不兼容,请发布它。

不,不兼容。当视图位于scrollspyCan中时,会添加类“active”,您可以在HTML中添加.active吗?也许看看图诺,那不行。当视图位于scrollspyCan中时,会添加类“active”,您可以在HTML中添加.active吗?也许看看我的答案,你觉得我的答案有用吗@你觉得我的答案有用吗@巧克力蛋白18