Мы заметили, что счетчики ссылок не будут увеличиваться, если вы нажмете на них правой кнопкой мыши и выберете «Открыть в новой вкладке» или используете среднюю кнопку мыши.
Это потому, что это функция браузера, и нет действия клика для перехвата. Насколько мне известно, страница назначения также не увидит реферер; это похоже на копирование и вставку URL в адресную строку.
Та же проблема возникает при среднем клике или клике с зажатой клавишей Control?
Понятно, спасибо!
Да. Я уже упомянул об этом в своём посте ![]()
Атрибут ping можно было бы использовать для инкремента счётчика.
Оговорки:
- В Firefox он отключён по умолчанию.
- Похоже, для него нет событий JS, поэтому счётчик будет заметно обновляться только при следующем посещении поста.
NB: Похоже, что события «mousedown» срабатывают при клике средней кнопкой мыши, но это приведёт к ложным срабатываниям, так как не каждый клик завершается навигацией — например, копирование ссылки или пользовательские настройки браузера.
Существует MouseEvent.button, который принимает значение 1 для «нажатия вспомогательной кнопки, обычно кнопки колёсика или средней кнопки (если она есть)».
Я считаю, что это допустимо. Нам, вероятно, не нужно подсчитывать строго количество загрузок связанной страницы, а скорее «взаимодействия со ссылкой». Думаю, что «копирование ссылки» также должно увеличивать счётчик, так же как и простое нажатие левой кнопкой мыши на ссылку.
Кроме того, я полагаю, что большинство людей не просто кликают по таким ссылкам левой кнопкой: обычно они хотят открыть их в новой вкладке, чтобы исходный пост на форуме оставался открытым, и им не приходилось постоянно перемещаться туда и обратно.
Я кликаю колесиком мыши по всему. Кроме Discourse, где я кликаю колесиком, помню, что это не увеличивает счётчик, а затем возвращаюсь на страницу, чтобы кликнуть левой кнопкой.
Я знаю, что это описанное поведение, но я это очень ненавижу.
Уверен, большинству людей было бы нормально, если бы счётчики завышали, а не занижали значения. По крайней мере, так вы знаете, что люди перешли по ссылке, тогда как сейчас многие могут перейти по ссылке, но чёртов счётчик всё равно не увеличивается.
Откуда у тебя такое мнение, @Pod? ![]()
Счётчики существуют для отображения вовлечённости. Каждый тип клика — это форма вовлечённости, поэтому метод пересчёта гораздо точнее отражает реальную активность. И я полагаю, что большинство пользователей хотели бы видеть, как часто на ссылки кликают.
С другой стороны, сомневаюсь, что кто-то хочет видеть счётчик кликов только левой кнопкой мыши или короткого нажатия на телефоне. Такая деталь кажется неважной для не-разработчиков.
Я видел множество обсуждений вокруг ссылок, у которых указано всего 1 или 2 клика, хотя предметом обсуждения были десятки человек. Метод недоучёта, который вы сейчас используете, очень неточен: все эти люди перешли по ссылке, но не сделали этого в рамках узкого набора параметров, которые сейчас отслеживает Discourse.
Я не знал об этом атрибуте.
Вот текущая совместимость с браузерами:
В целом поддерживается, за исключением Firefox по умолчанию, действительно.