Задать вопрос
@iddimon3

Как убрать решётку в адресной строке при нажатии на ссылку?

href='#' class="tablinks" id="orders">Заказы

На главной странице он не должен никак реагировать, но и решётку показывать тоже не хочется.
  • Вопрос задан
  • 208 просмотров
Подписаться 2 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 2
delphinpro
@delphinpro Куратор тега HTML
frontend developer
Так работает html
Единственный вариант – ловить клики по ссылкам и предотвращать их поведение по умолчанию

document.querySelectorAll('a[href^=#]').forEach(link => {
  link.addEventListener('click', e => {
    e.preventDefault();
    //....
  });
})
Ответ написан
Комментировать
SemanticMoscow
@SemanticMoscow
document.addEventListener('click',function(z){
if(z.target.tagName==='A'){
let h=new URL(z.target.href).hash;
if(h !=''){
z.preventDefault();
let b=document.getElementById(h.replace('#','')); // убрал решётку
b.scrollIntoView({block:'center',behavior:'smooth'});}}}); // отправил к центру блока с ID который был после решётки
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы