Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Разжевать referrer


Автор: Aliance 25.2.2005, 23:53
А у меня referrer почему-то не работает =(
Видимо я его как-то не так использую.
Вот ...innerHTML = document.URL работает, а то же самое, но с referrer - нет (
Ну, есесно, я делаю другую страницы с сылкой на данную и перехожу...

Автор: Sardar 26.2.2005, 00:12
Цитата(Aliance @ 25.2.2005, 22:53)
А у меня referrer почему-то не работает =(

Он является пустой строкой если ты не пришёл с какой-либо страницы.

Автор: Aliance 26.2.2005, 15:23
Понятно это, но читай внимательно:

Цитата(Aliance @ 25.2.2005, 23:53)
Ну, есесно, я делаю другую страницы с сылкой на данную и перехожу...


Автор: Sardar 26.2.2005, 15:43
Ну тогда код покажи smile

Автор: Aliance 26.2.2005, 17:19
Sardar
Обычный он, на первой странице ссылка <a href="2.htm"></a>

Файл 2.htm:
Код

...
var elem = document.getElementById("qwe").innerHTML;
elem = document.referrer;
...
<div id="qwe" style="align: center; border: 1px red solid; margin: 5px; padding: 15px;"></div>
...

Автор: Sardar 26.2.2005, 17:33
Aliance хорошь флейм разводить, создавай новый топик smile
Гляньна этот код, хорошо подумай что ты написал, помни что примитивы не передаются по ссылке и все ссылки в JS защищённые:
Код
var elem = document.getElementById("qwe").innerHTML;
elem = document.referrer;

Не понял? Поставь это последней строчкой: alert(elem); smile

Автор: Aliance 26.2.2005, 17:41
Хорошо, а как тогда? Ну с escape()`ом...разве это настолько поменяет суть вывода? Тогда ж поиди без него должна вывестись глючная ссылка, но должгна же... а она просто пустая (


Цитата(Sardar @ 26.2.2005, 17:33)
Aliance хорошь флейм разводить, создавай новый топик

А смысл ради деЦкого вопроса новый топ открывать smile я ж по теме пишу...

Автор: Sardar 26.2.2005, 18:00
Ну как хочешь... Из-за тебя наверное придётся в раздел для новичков топик кидат, дабы людей не шокировать. Рассмотрим выполнение по шагам:
Код
//создаём переменную, её значение это ХТМЛ содержимое тега, строка
var elem = document.getElementById("qwe").innerHTML;
//поменяем содержимое переменной на document.referrer
elem = document.referrer;
//естественно в теге ничего не поменяется, если ты этого ждёшь
alert(elem); //выдаст нам что всё в порядке, ошибка в твоей логике и как ты воспринимаешь ссылки;-)


P.S. Зри в корень.

Автор: Aliance 26.2.2005, 18:22
У меня вообще ничего не выдала (ну это без перехода по ссылке.)
А можкшь объяснить как правельно? =)

Автор: Sardar 26.2.2005, 19:17
Мда, скоро начну в одном месте рвать волосы, либо убью топик smile smile smile
И так создаём файл: referrer.htm, в нём таки строчки:
Код
document.write('<div id="qwe" style="align: center; border: 1px red solid; margin: 5px; padding: 15px;">'+document.referrer+'</div>');


Создаём файл index.htm, в нём сыслка:
HTML
<a href="./referrer.htm">Test</a>p


Закидываем всё на какой нибудь хост, с локалки работать не будет! Грузим индекс, жмём по ссылке, просветляемся. Затем открываем доку, убеждаемся что так оно и должно ратботать. Нирвана smile

Автор: batigoal 26.2.2005, 21:33
Э-э-э... А почему оно по-разному работает на хосте и на локалке?

Автор: Aliance 27.2.2005, 18:36
Sardar
Мдя. Достаточно сразу было сказать, что на локалке не работает и все!
У меня не работало там, я думал я что-то не то делаю. В общем ссделали из меня дурака ;-(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)