Фильтр комментариев на хабрахабре
Все знают про хабрахабр, где каждый день публикуются свежие интересности из мира IT. Так как хабр весьма “живой” ресурс, большая часть постов получает большое же число комментариев, “осилить” которые целиком бывает проблематично.
Чтобы было немного проще, удобнее и вообще быстрее просматривать комментарии, я решил сделать фильтр, который при вызове скрывал бы часть комментариев. Видимыми оставались бы только те комментарии, оценка которых либо выше заданного положительного значения (значит, коммент получил явное одобрение аудитории), либо ниже заданного отрицательного (значит, коммент получил резкое осуждение). Все остальные комментарии, которые не вызвали особой реакции других комментаторов, скрываются от просмотра.
На JavaScript я ничего сложнее window.location раньше не делал, поэтому потратил на это дело далеко не пару часов, но все-таки с помощью хорошего справочника по JavaScript разобрался более-менее, что к чему, и сделал фильтр, которым (а, вернее, которыми) и хочу поделиться, ведь наверняка многие из вас тоже читают хабр.
В итоге фильтр получился не один, а два, далее расскажу, как работает каждый из них и вы сами для себя выберете, какой вам больше подойдет.
Первый фильтр: скрывает только текст у комментов, не проходящих по условиям, оставляя аватары авторов, их имена и оценки. Справа от имени появляется надпись “Show”, кликнув по которой, можно будет прочитать данный коммент.
Плюсы: скрывает почти все лишнее, не нарушает последовательность комментариев, можно прочитать какой-то скрытый коммент (перед или после “популярным” открытым, если это необходимо). Минусы: все равно лишняя информация присутствует (об авторах комментов), что обращает на себя лишнее внимание глаз и увеличивает “глубину” листа комментариев.
Второй фильтр: целиком скрывает комменты, не проходящие по условиям.
Плюсы: скрывает вообще все лишнее, очень удобно просматривать. Минусы: нарушается последовательность комментариев.
Как использовать: я просто добавил на панель своего браузера (Firefox) кнопку, кликнув по которой срабатывает фильтрация. Чтобы это сделать кликаем по панели браузера правой кнопкой мыши, “Новая закладка”, в поле “Адрес” вставляем код фильтра, сохраняем. Для других браузеров почти аналогично, думаю, каждый сам знает, как в его браузере добавить закладку и вынести ее на панель Профессионалы же используют всякие браузерные расширения для использования своих скриптов и точно лучше меня разберутся, как им применить коды фильтров.
Изменяя в коде фильтров значения “plus” и “minus” можно задать свои личные критерии “нужности” комментариев.
А почему бы не оформить это в виде userscript для greasemonkey? Хотя что-то подобное видимо уже есть userscripts.org/scripts/show/68758
Вообще на юзерскриптс хватает скриптов для хабра. Сразу оговорюсь - сам я их не использовал.
Для тех, кто знает, что это такое (я не в курсе), я и написал: “Профессионалы же используют всякие браузерные расширения для использования своих скриптов и точно лучше меня разберутся, как им применить коды фильтров.”
Этот скрипт просто скрывает полностью все комменты без разбора, чтобы человек не тратил время на их прочтения (это в коде написано)
Хорошие фильтры, вижу с javascript неплохо разобрался. Во втором конечно не очень приятный недостаток. Порядок комментариев важен.
monstr !
А то