Показать сообщение отдельно
  #4 (permalink)  
Старый 11.05.2020, 23:54
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от novice123
Если мне понадобится записывать адреса не всех кликнутых ссылок, а только конкретных - мне просто нужно onclick вызывать функцию, которая будет записывать в локальное хранилище, верно?
Можно так, а можно добавить класс к ссылке.

Сообщение от novice123
как поступить с внутренними страницами, с которых не требуется делать редирект
Проверять, главная ли это страница.

Вот пример, если у ссылки есть класс reg2go, то при нажатии на неё в хранилище записывается её адрес. Также указано, что переход на другую страницу производится только с главной страницы.
<html>
<head>
<script>

if(location.pathname == "/" && "reg2go" in localStorage) {
	location.href = localStorage.reg2go;
}

addEventListener("click", event => {
	const link = event.target.closest("a.reg2go");
	if(link != null) {
		event.preventDefault();
		localStorage.reg2go = link;
	}
});
</script>
</head>

<body>
	<a class="reg2go" href="http://test.test/1/">1</a>
	<hr/>
	<a class="reg2go" href="http://test.test/2/">2</a>
	<hr/>
	<a href="http://test.test/3/">3</a>
	<hr/>
</body>
</html>
Ответить с цитированием