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

Как убрать действие по умолчанию у ссылки через preventDefault?

По умолчанию у ссылки choiceCity есть #, как при клике убрать # через preventDefault? Что бы к урлу не добавлялся #.

const choiceCity = document.querySelector(".choice-city");
const modalCity = document.querySelector("#modalCity");
const citiesClose = document.querySelector(".cities-close");
const citiesListItem = document.querySelector(".cities-list-item");
const citiesListItemHref = document.querySelector(".cities-list-item").href;

//Фукция открытия модального окна
function toggleModal(){
	modalCity.classList.toggle("is-open");
}

//Проверка на идентичность урла и адреса ссылки, если похожи - вешаем класс.
if(window.location.href === citiesListItemHref){
	citiesListItem.classList.add("active-city");
}

//Добавляем "слушателя".
choiceCity.addEventListener("click", toggleModal);
citiesClose.addEventListener("click", toggleModal);
  • Вопрос задан
  • 186 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
function toggleModal(event){
event.preventDefault();
modalCity.classList.toggle("is-open");
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Чтобы отменить действие по-умолчанию для события нужно на нём выполнить preventDefault. Судя по вопросу, вы об этом знаете. Что вызывает трудности?
Ответ написан
Ваш ответ на вопрос

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

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