Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   узнать по какой ссылке перешли на страницу (https://javascript.ru/forum/misc/49609-uznat-po-kakojj-ssylke-pereshli-na-stranicu.html)

sl1m 21.08.2014 00:28

узнать по какой ссылке перешли на страницу
 
Всем привет) Такой вопрос, есть страница а, на не 3 ссылки, все ведут на страницу б, как узнать что пользователь перешел на б по 3й ссылке? Пока лучше записи в куки ничего не придумал, по моему это сильно сложный вариант

Aetae 21.08.2014 00:32

Добавить параметр\якорь?
<a href="link.html?one">
<a href="link.html?two">
<a href="link.html#three">

sl1m 21.08.2014 00:41

а если у меня уже занята ури, тем более я пока не знаю как хтацесс убивает гет, конечно над этим вариантом я тоже думал, но система устроена так что не совсем удобно так делать

Aetae 21.08.2014 00:48

Ну а других вариантов и не вижу. Если три идентичные ссылки ведут на одну и ту же страницу, то только и остаётся что cookie\localStorage.

sl1m 21.08.2014 01:00

а если через историю, тоже никак, через пушстейт, при клике записать в историю 1й аргумент, а потом читать его?

skrudjmakdak 21.08.2014 08:40

нашел вот такое свойство document.referrer

Aetae 21.08.2014 08:50

sl1m, хм, наверное можно. Пробуй.)
skrudjmakdak, тут это ничем не поможет.

skrudjmakdak 21.08.2014 08:54

а можно более развернутый ответ услышать?

Aetae 21.08.2014 08:55

skrudjmakdak, тс нужно знать куда пришли, а не откуда.

skrudjmakdak 21.08.2014 09:03

мдя, протупил))

skrudjmakdak 21.08.2014 09:22

вот, я потрудился))

<!DOCTYPE html>
<html>
<head>
    <title>example</title>
</head>
<body>
    <a href="?link=1" slink="link1">link 1</a><br>
	<a href="?link=2" slink="link2">link 2</a><br>
	<a href="?link=3" slink="link3">link 3</a>
	<script>
	Array.prototype.forEach.call(document.querySelectorAll('a'), function (ths)
		{
		ths.onclick = function ()
			{
			var ar = links.split('?');
			ar.push(this.getAttribute('slink'));
			sessionStorage.setItem('links', ar.join('?'));
			};
		});
	
	var links = sessionStorage.getItem("links");
	if (!links) links = '';
	console.log(links.split('?'));
	</script>
</body>
</html>


Часовой пояс GMT +3, время: 14:06.