Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Отследить открытие ссылки само по себе, без onclick (https://javascript.ru/forum/events/23205-otsledit-otkrytie-ssylki-samo-po-sebe-bez-onclick.html)

lancer 16.11.2011 00:13

Отследить открытие ссылки само по себе, без onclick
 
Сбор href'ов нажатых ссылок. С кликом левой кнопки проблем нет - событие onclick. Можно обойти и проблему отсутствия клика на колесике:
http://blog.perlover.com/2010/03/14/...1/#comment-572

Но понятно, что немалое кол-во пользователей открывают ссылки так:
правый клик – панель опций – открыть на новой вкладке - onclick тут не поможет.

Есть идеи? Впринципе, так как нам не нужен непосредственно onclick, а всего лишь факт открытия ссылки, может как-нибудь можно отследить именно открытие?

П.С. Про колесик читал здесь в статьях - дескать невозможно его отследить пишут. Может и открытие все таки решается.

trikadin 16.11.2011 00:31

Ссылка становится посещённой после нажатия на неё. Возможно, можно отследить посещённость/непосещённость ссылки.

observer 16.11.2011 01:10

Цитата:

Сообщение от trikadin (Сообщение 136810)
Возможно, можно отследить посещённость/непосещённость ссылки.

Можно проверить цвет ссылки (https://developer.mozilla.org/en/DOM...tComputedStyle) и, зная цвет посещенных сравнить с ним (с цветом).

Aetae 16.11.2011 01:30

trikadin, observer, а вот и нельзя. Вопросы безопасности. Никаким образом с помощью js вы не сможете отличить посещённую ссылку от непосещённой.

observer 16.11.2011 01:40

Цитата:

Сообщение от Aetae (Сообщение 136819)
trikadin, observer, а вот и нельзя. Вопросы безопасности. Никаким образом с помощью js вы не сможете отличить посещённую ссылку от непосещённой.

Безопасности чего? Вам же разработчики браузеров дали в руки getComputedStyle.

trikadin 16.11.2011 01:46

observer, а вы попробуйте) Действительно - нельзя...

Aetae 16.11.2011 01:46

Безопасности пользовательской личной жизни.
Хотите - не верьте, мне не жалко.)
Помучтесь часок другой, попытайтесь доказать что вы умней разрабов.)

lancer 16.11.2011 15:25

getComputedStyle, цвет посещенной/не посещенной ссылки - не подходит еще и потому, что решение универсальное должно быть, на старнице часто бывают ссылки, которые вообще не меняют цвета, как пример главное меню. А с учетом того, что интересна последняя посещеная ссылка, решение с таким подходом было бы не простым даже если бы было доступно.

observer 16.11.2011 16:10

Да, и вправду не работает. Приношу извинения. Хотя раньше (давненько уже так) работало.

Цитата:

Сообщение от lancer (Сообщение 136914)
цвет посещенной/не посещенной ссылки - не подходит еще и потому, что решение универсальное должно быть, на старнице часто бывают ссылки, которые вообще не меняют цвета, как пример главное меню

Это легко лечится чтением URL-адресов из всех ссылок в документе с последующим созданием ссылок на лету, добавлению их в некий блок у которого четко прописаны цвета (чтобы не было видно для пользователя можно просто вынести этот блок абсолютным позиционированием за пределы viewport).

Aetae 16.11.2011 18:11

Разрабов вы таки все равно не обманите.) Но теоретически, если бы такое вообще было возможно - да.)

trikadin 16.11.2011 18:16

Aetae, я может что-то путаю, но в канвасе есть способы получения цвета пикселя экрана? Не работал с канвасом, могу ошибаться.

Если через него?

Aetae 16.11.2011 18:30

=)))
Попытайтесь. Получится - можете с гордостью идти на багтрекер мозилы и в следующей версии эту возможность прекроют.)
Но 1:100500 - ничего у вас не выйдет.)

trikadin 16.11.2011 18:32

Aetae, да нафиг надо) Мне просто интересно искать варианты...

Aetae 16.11.2011 18:59

Кстати, если по теме:
Вы никак не сможете узнать что юзер открыл страницу во вкладке.
Единственный вариант - подменять все ссылки на странице на свои, переадресовывающие.
Пример.

trikadin 16.11.2011 19:14

Цитата:

Сообщение от Aetae
Пример.

Да что пример, все поисковики так делают... Кстати, вы заметили, что автор уже давно болт положил на эту тему?)

Gozar 16.11.2011 19:39

Косвенно можно узнать, никаких хаков, без подмен ссылок, но т.к. вариант неточный и зависит от разных факторов где собственно находится ссылка(контейнер) то приводить не буду. А вообще-то уважать нужно личную жизнь пользователя!

Aetae 16.11.2011 20:30

Цитата:

Сообщение от Gozar (Сообщение 136956)
А вообще-то уважать нужно личную жизнь пользователя!

=)) Ну ну, гугл вон дюже уважает.)

Gozar 16.11.2011 21:57

Aetae,
Равняясь на кого-то, приобретаешь их дурные свойства.
Я не представитель гугл. Может гугл разбазаривает инфу. о пользователях? Чем он не уважает?

lancer 16.11.2011 22:11

Цитата:

Кстати, вы заметили, что автор уже давно болт положил на эту тему?)
Это почему? Читаю и дивлюсь чудесам техники(считывание пикселей канвазом). С трудом верю что-то то подобное кто бы начал применять даже, если бы эта возможность не была прикрыта, слишком мудренное решение на мой взгляд.

trikadin 16.11.2011 22:14

Цитата:

Сообщение от lancer
С трудом верю что-то то подобное кто бы начал применять даже, если бы эта возможность не была прикрыта, слишком затратное решение для обычных проектов.

У страха глаза велики)

lancer 16.11.2011 22:23

5% кликов при помощи колесика, через панель-открыть на новой вкладке примерно такое же. Можно просто плюсовать это значение к результату. Для статистики обычного проекта вполне сгодится.

dmitriymar 16.11.2011 22:35

блин,а не понял при чём узнать цвет пиксела в канве нельзя или по чему нельзя?
хоть одна причина почему нельзя определить цвет пикселя в канве на своём сайте? можно и легко.
или в тему не вкурил...
а в остальном
Aetae,+
Gozar,+
А вообще,приходят за советом и то что не вписывается в их мировоззрение-типа бред. бред блин.

lancer 16.11.2011 22:46

Что это бред я не писал, я писал, что для моего проекта (обычного, с обычным временем и бюджетом) это решение не рентабельно. Не надо писать того, что я не говорил.

Aetae 17.11.2011 08:41

Цитата:

Сообщение от lancer (Сообщение 137002)
5% кликов при помощи колесика, через панель-открыть на новой вкладке примерно такое же. Можно просто плюсовать это значение к результату. Для статистики обычного проекта вполне сгодится.

5%? Отнюдь, отнюдь. Я вообще практически никогда не открываю ссылку на другой сайт в текущем окне(коме поисковиков, конечно). Либо юзайю "открыть в новой вкладке", либо, что чаще, просто перетаскиваю на панель вкладок.
Цитата:

Сообщение от lancer (Сообщение 137011)
Что это бред я не писал, я писал, что для моего проекта (обычного, с обычным временем и бюджетом) это решение не рентабельно. Не надо писать того, что я не говорил.

Рабочий вариант я вам предложил.

UDN 19.11.2011 03:28

любое открытие происходит через href, так сделайте подмену.
<a href="http://javascript.ru">
на
href="javascript:myFunction()"
а в myFunction() уже обрабатывайте как хотите.

К тому же реализовать намного проще.

Aetae 19.11.2011 12:06

Цитата:

Сообщение от UDN (Сообщение 137587)
любое открытие происходит через href, так сделайте подмену.
<a href="http://javascript.ru">
на
href="javascript:myFunction()"
а в myFunction() уже обрабатывайте как хотите.

К тому же реализовать намного проще.

Лучи поноса вам.
Таким образом вы заставитье юзера забыть о вашим сайте, ибо иначе чем нажатием эту ссылку не окрыть.

lancer 19.11.2011 19:02

Цитата:

Сообщение от Aetae (Сообщение 137084)
5%? Отнюдь, отнюдь. Я вообще практически никогда не открываю ссылку на другой сайт в текущем окне(коме поисковиков, конечно). Либо юзайю "открыть в новой вкладке", либо, что чаще, просто перетаскиваю на панель вкладок.

Человек, который изобрел способ отслеживать клики колесиком на основе 65 тыс. кликов выявил 5% колесиком.

Цитата:

Сообщение от Aetae (Сообщение 137084)
Рабочий вариант я вам предложил.

Спасибо конечно, но пока ограничусь тем, что есть.

Aetae 19.11.2011 19:18

Цитата:

Сообщение от lancer (Сообщение 137669)
Человек, который изобрел способ отслеживать клики колесиком на основе 65 тыс. кликов выявил 5% колесиком.

Если отслеживать все ссылки то так оно, конечно, и есть. Ибо 95% переходов осуществляется внутри сайта.

Это ещё зависит от того на кого расчитан сайт.
Ословоды вообще не знают о вкладках.)

trikadin 19.11.2011 19:40

Цитата:

Сообщение от Aetae
Ословоды вообще не знают о вкладках.)

Ага... Кстати, кто-нибудь знает, как его заставить открывать ссылки не в новом окне, а в новой вкладке?)


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