Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Reindjer от 22 Января 2007, 20:07:59

Название: visited или not visited
Отправлено: Reindjer от 22 Января 2007, 20:07:59
есть таблица из трех столбцов:
- дата
- ссылка
- город
Нажимая на ссылку она должна поменять цвет, но чтоб 1. она СРАЗУ поменяла свой цвет 2. чтоб зайдя пользователь через некоторое время чтобы на тех ссылках которых он был также отмечались.

1. сделал с помощью вставки в ссылки события onmouseup=hide(this); которая вызывает функцию яваскрипт которая меняет цвет ссылки

2. в css файле сдлелал строку вида a.rec:visited... ляляля...


НО это только ссылка меняет цвет, мне надо чтоб еще и поле дата и поле город также изменяли свой цвет в зависимости от цвета ссылки

для этого надо как то проверить посещена ли ссылка или нет или проверить ее цвет, и если цвет такой то, или если посещена ссылка то и изменить цвет даты и города
Название: visited или not visited
Отправлено: CGVictor от 22 Января 2007, 22:03:29
Reindjer
1. Чем меняешь цвет ссылки? Теоретически (если решать "в лоб") можно проверить object.style.color, сделать выводы
2. Можно проверить модификатор visited - но сейчас я, каюсь, и не вспомню как..:( [off]drunk : )[/off]
Название: visited или not visited
Отправлено: andymc от 23 Января 2007, 13:41:01
Цитировать
мне надо чтоб еще и поле дата и поле город также изменяли свой цвет
это же у тебя таблица, все 3 поля расположены в строке, в теге , следовательно при нажатии на ссылку можно менять стиль всей строки
Цитировать
для этого надо как то проверить посещена ли ссылка
можно посмотреть объект history
Название: visited или not visited
Отправлено: CGVictor от 23 Января 2007, 15:41:40
andymc
* доступа к history может и не быть.
Название: visited или not visited
Отправлено: Reindjer от 23 Января 2007, 20:02:55
CGVictor как раз меняю цвет путем object.style.color...

хм... это идея, проверять тот же object.style.color, но как изменить цвет шрифта который находится в ....Дата.........
Название: visited или not visited
Отправлено: Reindjer от 23 Января 2007, 20:05:02
andymc как изменить цвет шрифта в через javascript? или лучше в
Название: visited или not visited
Отправлено: CGVictor от 23 Января 2007, 20:21:25
Reindjer
tr_row_object.style.color?
Хотя не уверен, что он везде будет работать, особенно если сверху есть еще правила.

А еще есть вариант не париться и использовать серверный код.
Название: visited или not visited
Отправлено: Reindjer от 23 Января 2007, 23:31:47
CGVictor

не. в таблице где дата(text), ссылка(link), город(text) изменяется цвет сейчас у меня только ссылки при событии onmouseup(this)-> id.style.color=\'#989898\'. вот и всё. но над чтоб еще и text и город менялся в зависимости от цвета ссылки. над просто код который меняет цвет шрифта в на яваскрипт. а просто мало знаю яваскрипт и не знаю какой командой это делается. пхп хорошо знаю
Название: visited или not visited
Отправлено: Reindjer от 23 Января 2007, 23:32:53
работает кстати проверялв в ослике 6,7, опере 7.5+, мозилле и firevox - ссылка все хорошо меняет цвет
Название: visited или not visited
Отправлено: CGVictor от 24 Января 2007, 00:41:44
Reindjer
Вариант 1 - менять .style.color для TD. У него тоже есть onMouseUp.
Вариант 2 - на php проставлять элементам id и менять нужные свойства из JS по известному id.

Однако, при загузке страницы тебе так или иначе нужно будет найти все твои ссылки (getElementsByClassName ?) и проверить их цвет (выставленный браузером).

В общем, решение достаточно узкое. Зависимость логики от цвета ссылки... а если у меня вообще свои стили? о.О

Если ссылки ведут на твой же домен, то я бы рекомендовал обрабатывать логику подсветки на сервере, а в js только менять при нажатии.
Название: visited или not visited
Отправлено: Reindjer от 24 Января 2007, 09:30:02
обрабатывать логику подсветки на сервере - енто как так с таким зверем работать? а использую onmouseup так как у меня и так там и onclick есть и onmouseover и еще всякая фигня
Название: visited или not visited
Отправлено: CGVictor от 24 Января 2007, 10:17:53
Reindjer
* Тьфу, блин, опечатался вчера выше, сорри - не для TD, где у тебя сейчас сделано, а для TR.

Цитировать
Reindjer:
с таким зверем работать

Да всё просто. Переходы по ссылкам отслеживаем на стороне сервера и при выводе страницы уже сразу меняем "подсветку". А onMouseUp оставляем только для интерактивности...