JavaScript-ссылки и свойство visited @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 15 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Заголовок сообщения: JavaScript-ссылки и свойство visited
Сообщение Добавлено: 18 Июнь 2007, 10:40:15 
Для отслеживания навигации по сайту использую такую конструкцию:

<a href="bla_bla_01.html" onclick="MoveAndMark('bla_bla_01.html', '_arrows'); return false">

Т.е. посетитель с включенным JavaScript нажимая на элемент навигации "стрелка", попадает на страницу "bla_bla_01.html?_arrows"
Если он нажмет на ссылку в футере, он попадет на ту же страницу, но с адресом
"bla_bla_01.html?_footer"
ну и так далее.
Все это я вижу в liveinternet-статистике.

А те, у кого не включен JavaScript, в том числе роботы поисковиков, ходят по ссылкам без параметров и ни о чем не подозревают.

Все работает, как хочется, но:

Задумал помечать ссылки на уже посещенные страницы
p a {color: #000000; TEXT-DECORATION: underline;}
p a:link {color: #000000; TEXT-DECORATION: underline;}
p a:visited {color: #000000; TEXT-DECORATION: underline;}
p a:hover {color: #d772b0; TEXT-DECORATION: underline;}
p a:active {color: #000000; TEXT-DECORATION: underline;}

и оказалось, что браузер не помечает страницы, на которые посетитель попадает по JavaScript-ссылке, как visited.

Как быть?
Помогите ламеру.
Jamakaser Муж.
участник
91
Сообщения: 1163
Зарегистрирован: 26.01.05
Сообщение Добавлено: 18 Июнь 2007, 10:50:43 
Э-э-э...

<a href="bla_bla_01.html?_arrows" onclick="MoveAndMark('bla_bla_01.html', '_arrows'); return false">

Или я чего-то не понимаю.

_________________
Найди кликабельный пиксель -->
Jamakaser Муж.
участник
91
Сообщения: 1163
Зарегистрирован: 26.01.05
Сообщение Добавлено: 18 Июнь 2007, 10:53:03 
Код:
p a {color: #000000; TEXT-DECORATION: underline;}
p a:link {color: #000000; TEXT-DECORATION: underline;}
p a:visited {color: #000000; TEXT-DECORATION: underline;}


Это так и есть в коде?

_________________
Найди кликабельный пиксель -->
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 18 Июнь 2007, 11:06:28 
Jamakaser, +1
Код:
p a:visited {color: #777777; TEXT-DECORATION: underline;}

_________________
клетчатый!
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 18 Июнь 2007, 11:27:37 
Не, прошу прощения,

p a:visited {color: #000000; TEXT-DECORATION: none;}

конечно. Просто скопировал из файла, который уже вернул в исходное состояние.

Т.е. по умолчанию ссылки внутри <p> черного цвета и подчеркнуты. А посещенные ссылки должны терять подчеркивание.



Jamakaser, Нет, если так просто сделать, то поисковики всосут кучу разных ссылок для каждого файла (с разными параметрами: ?_arrows, ?_content, ?_footer, …) Не знаю, насколько это плохо, но не порядок, точно.
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 18 Июнь 2007, 11:28:49 
Dimalish, пройдись скриптом по всем ссылкам и поставь в них хвост ?_footer. Кроме того, это позводит обойтись без onClick.

Код можно вставить в onLoad или вызывать скрипт персонально после каждой ссылки.
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 18 Июнь 2007, 11:50:32 
Crazy,
Блин, изящно! Спасибо.
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 18 Июнь 2007, 23:01:02 
Хм, а решение оказалось половинчатым.
Т.е. все равно браузер считает "посещенной" (visited) страницу с точным УРЛом, включая параметр. А потому получается, что если кликнуть на ссылке в области основного содержания (получится, к примеру, bla_bla_01.html?_content), а потом вернуться на страницу, то вот оно - сработало, подчеркивание исчезло.
А если перейти на эту же страницу (bla_bla_01.html) по ссылке в меню, то посещенной окажется страница уже bla_bla_01.html?_menu. А та, которая в области содержания (с ?_content), так и останется якобы непосещенной.

Моя первоначальная идея была такая - каждая страница по onload получает свойство visited. Если такое возможно. Даже можно было бы помечать сразу все возможные комбинации УРЛ с параметрами - их всего-то три штуки.

Вопрос остается - можно ли на любой странице выполнять скрипт, который пометит эту страницу и все, отличающиеся только параметром (не открывая их, естественно), как visited?
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 19 Июнь 2007, 00:09:45 
Не очень понял, зачем нужны эти хвосты -- _menu и _content.

BTW, если сделать #menu и #context, то будет отрабатывать подсветку верно.
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 19 Июнь 2007, 10:21:28 
Crazy,
Хвосты нужны, чтобы глядя на путь посетителя по сайту (LI/экспресс аудит/Последние сто ip), видеть, пользуется ли он только меню или еще кликает на ссылки в Футере, заметны ли ссылки в тексте, пользуется ли клавиатурной навигацией...
Для этого ссылки на один файл, расположенные в разных элементах навигации, надо как-то отличать. Вот я и придумал самый простой способ - приписать к ним параметры.

Ага, с # заработало в ИЕ и Опере. А маковские Сафари и ФФ по-прежнему путаются, заразы.
Jamakaser Муж.
участник
91
Сообщения: 1163
Зарегистрирован: 26.01.05
Сообщение Добавлено: 19 Июнь 2007, 10:36:24 
http://www.labsmedia.com/clickheat/index.html

Может пригодится.

_________________
Найди кликабельный пиксель -->
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 19 Июнь 2007, 11:47:14 
Dimalish, можно повесить обработчики onclick на ссылки и по ним через XmlHttp посылать уведомление на сервер. Кто, куда и откуда пошел. Я пробовал -- это работает.

В этом случае сами ссылки вообще не меняются.
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 19 Июнь 2007, 14:34:31 
Crazy,
Чем дальше в лес, тем толще партизаны...
"через XmlHttp посылать уведомление на сервер" в этом месте я уже "поплыл". Еще не дочитал до этого места :о)
Но большое спасибо.
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 19 Июнь 2007, 14:49:10 
Если будут нужны подробности -- спрашивай.
Dimalish Муж.
Модератор
35
Сообщения: 3521
Зарегистрирован: 30.06.01
Откуда: Нижний Новгород
Сообщение Добавлено: 19 Июнь 2007, 15:56:32 
Crazy, ага.

Кстати, # не покатила - статистика LI отбрасывает локальную часть УРЛ.

"как трудно жить" (с) :о)
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 15 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100