Как определить была ли ссылка посещена
Как определить программно в своем скрипте - посещалась ссылка или нет?
Я могу создать стиль, в котором visited links изменят цвет, например, и браузер сам найдет посещенные ссылки и изменит их свойства. А как моему скрипту определить visited links? |
Цитата:
Из-за политики безопасности никаким образом не возможно со стороны скрипта определить посещенные страницы. Какие бы стили вы не применяли, при попытке получения стиля браузер вам выдаст стандартный стиль ссылки, а не текущий, каким бы он ни был. |
- FF 3.6
Ещёб ff2.0 взяли. С четвёртого по-мойму и пофиксили. Опера - хз, как там в актуальных версиях(>11)/ IE - а что вы ожидали от осла? Но вообще, те то заботится о собственной безопасности - юзают только актуальные версии. Так и быть, поправку внесу: никаким образом это нельзя сделать кроссбраузерно. |
Дзен-трансгуманист,
Я в принципе хотел что-то подобное (просто, скажем, высоту ссылок изменить или что-то в этом духе), но Ваш код интереснее конечно. К сожалению, в FireFox 13.01 не работает: alert(spy.offsetWidth) всегда выдаёт 0 . А Вы в каком браузере проверяли? Вообще - FireFox для "A:visited" меняет цвет, но не ширину! Просто для тэга "A" меняет и ширину без проблем. То есть ограничение похоже в том, что нельзя изменять какие-то свойства, по которым можно узнать посещалась ли ссылка (цвет не в счет - его узнать нельзя, imho, даже несмотря на возможность изменения цвета). Интересно, а у всех ли объектов DOM FireFox успел перекрыть доступ из-под a:visited и ко всем ли их свойствам, или же есть какие-то дыры? |
Поищи. Найдёшь - запости на багтрекер фф чтоб потешить тщеславие, или продай секрет.(если найдёшь кому:))
|
Цитата:
Вот тест: <!DOCTYPE HTML> <html lang="ru-RU"> <head> <meta charset="UTF-8"> <style type="text/css"> body,html{ background: #000; } a{ color: #aaa; display: block; background: #222; border:4px solid; border-radius: 15px; box-shadow: 5px 5px #fff; float:left; margin:5px auto; padding:15px; font:30px/35px Impact, serif; } a::after{ content: " link!" } a:visited{ color: #afa; display: inline-block; background: #262; border:4px dotted; border-radius: 0; box-shadow: 0 0 0 12px #0f0; float:right; margin:10px; padding:45px; font:10px/15px monotype; } a:visited::after{ content: " visited!" } </style> </head> <body> <script type="text/javascript"> document.write('<a href="#'+Math.random()+'">Ссылка</a>') </script> </body> </html> |
А я и не говори что можно. Я просто уточнил твой пост.)
|
Цитата:
Большинству пользователей особо нечего скрывать и они намного больше информации о себе сливают другими способами. Это пригодится очень малому количеству людей поэтому стоило включать только в режиме повышенной безопасности. Зато, определяя (не)посещенные ссылки или изменяя их свойства, а не только цвет, можно было бы существенно улучшить интерфейс пользователя. (Чего я и хотел сделать сейчас для себя, но не дают же). Здесь IE8 мне больше по душе, чем Firefox/Chrome - надеюсь, в новых версиях Микрософт ничего не поменяет. |
Цитата:
|
Цитата:
Вообще сейчас я подумываю для этих целей себе небольшое расширение для фф сделать. С расширеными пояснениями к visited ссылкам. Типа своих комментов.) Цитата:
|
Часовой пояс GMT +3, время: 08:55. |