У меня проблема с модальным блоком, который при открытии добавляет хэш к текущему URL (который может иметь другие хэши)
01
Этот код работает нормально для меня, но оставляетэто "#" при удалении хэша
window.location.hash = location.hash.replace(/#About/, '');
пример при открытии модального окна: www.mywebsite.com/#products# О
когда модальное окно закрыто: www.mywebsite.com/#products#
что я хочу получить: www.mywebsite.com / # products
02
Также попробуйте этот, который отлично работает, но удаляет все предыдущие хэши
history.pushState("", document.title, window.location.pathname);
или
history.pushState("", document.title, window.location.pathname + window.location.search);
результаты:
при открытии модальных: www.mywebsite.com/#products#About
при модальныхclose: www.mywebsite.com (я не хочу, чтобы предыдущие хэши были удалены)
Это мой код:
$(".barMenuFooter a.buttonShowDetail").on('click', function(){
$(this).toggleClass('active');
if ($(this).hasClass("active")) {
window.location.hash = location.hash + "#About";
openAbout();
}
else {
window.location.hash = location.hash.replace(/#About/, '');
closeAbout();
}
});
Iпросто хочу полностью удалить последний добавленный хеш (без #) без перезагрузкиг страницы.