выделить другим цветом ссылку, которая перевела на определенную часть страницы

71
26 июня 2021, 12:50

Есть страница, навигация по ней работает по ссылкам, каждая ссылка ведет на определенную часть страницы.

Как сделать так, что бы ссылка меняла свой цвет (если она активная на данный момент)?

Answer 1

Немного мимо кассы, но с jQuery как-то так можно это сделать (вдруг кому-то пригодится)

$(".link").click(function() { 
  event.preventDefault(); 
  let navEl = $(this); 
  let scrollElement = $(this).attr("href"); 
  let scrollOffset = $(scrollElement).offset().top; 
  if (!navEl.hasClass("active")) { 
    $(".link").removeClass("active"); 
    navEl.addClass("active"); 
    $("html,body").animate({ 
      scrollTop: scrollOffset 
    }, 1100); 
  } 
});
.nav { 
  position: fixed; 
  top: 0; 
  background: white; 
} 
 
.link { 
  border: 1px solid; 
  background: grey; 
} 
 
.active { 
  background: red; 
} 
 
.body div { 
  height: 550px; 
  border: 1px solid; 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 
<div class="nav"> 
  <a href="#sec1" class="link active">sec1</a> 
  <a href="#sec2" class="link">sec2</a> 
  <a href="#sec3" class="link">sec3</a> 
  <a href="#sec4" class="link">sec4</a> 
</div> 
<div class="body"> 
  <div id="sec1">sec1</div> 
  <div id="sec2">sec2</div> 
  <div id="sec3">sec3</div> 
  <div id="sec4">sec4</div> 
</div>

READ ALSO
Проблема с import React from &#39;react&#39;;

Проблема с import React from 'react';

у меня есть employeejsx которых отображает employee и все окей но как только я добавляю export default Employees для того что бы класс использовать в другом месте,...

79
Как скачать файл с локального сервера js

Как скачать файл с локального сервера js

В общем, суть такаяЯ только начал изучать web

108