Скрипты для Рутора и Порнолаба

Часто посещаю вышеназванные сайты и прежде чем открывать раздачу сначала охота просто посмотреть скрины (в особенности на Порнолабе). Так и появилась идея написать эти скрипты. До этого с веб программированием и javascript-ами не работал, мог где-нибудь накосячить(поправкам буду рад!). 


Принцип работы прост, щелкаем по пустому месту в строке раздачи, скрины загружаются. Щелкаем еще раз, скрины удаляются. Подробнее смотрите на гифках. 


Отлично сочетается со скриптом Mouseover Popup Image Viewer (не мое). Данный скрипт показывает увеличенное изображение при наведении на привью изображения (Видно на гифке с Рутором).


Для работы этих скриптов необходимо расширение Tampermonkey (Google Chrome).

Для Мазилы тоже есть подобное расширение Greasemonkey, но там эти скрипты не взлетели.


Куда щелкать.

Скрипты для Рутора и Порнолаба Rutororg, Tampermonkey, Greasemonkey, Javascript, Pornolab, Скрипт, Удобство, Гифка, Длиннопост

Пример работы на Руторе. (пережал гифку малек)

Скрипты для Рутора и Порнолаба Rutororg, Tampermonkey, Greasemonkey, Javascript, Pornolab, Скрипт, Удобство, Гифка, Длиннопост

Пример работы на Порнолаб.

Скрипты для Рутора и Порнолаба Rutororg, Tampermonkey, Greasemonkey, Javascript, Pornolab, Скрипт, Удобство, Гифка, Длиннопост

Для установки открываем нужный скрипт и нажимаем зеленую кнопку "Установить этот скрипт".


Скрипт для Рутора

Скрипт для Порнолаба


Скрипт Mouseover Popup Image Viewer (не мое)

Вы смотрите срез комментариев. Показать все
Автор поста оценил этот комментарий

на лабе где-то работает, где-то нет

на руторе завел чтобы было 2 скрипта но нечего не показывает... задумка годная но надо допиливать

+

желательно сделать  четкую "зону" где бы срабатывал данный скрипт, эту зону выделить как сменой указателя мыши со "стрелочки" на, например, "руку" будет нагляднее

раскрыть ветку (8)
2
Автор поста оценил этот комментарий

Возможно не срабатывает т.к. там четко прописанно с каких доменов искать скрины в строке var re = /(<a href=.*?(?:radikal|fastpic|firepic|you-logo|lostpic).*?<img src=.*?<\/a>)/g. Т.е. можно увидеть что ищет изображения только с доменов на radika,|fastpic,firepic,you-logo,lostpic. Можно добавлять свои домены через вертикальную палку "|".

раскрыть ветку (7)
2
Автор поста оценил этот комментарий

будем по старинке)

подпишусь и сохраню, а ты допиливай :D

1
Автор поста оценил этот комментарий

Для рутора потыкал, вроде должно отрабатывать

 '#details > tbody > tr:nth-child(1) > td:nth-child(2) > img'

Используя это в querySelector на 7 случайных страницах выбрал именно ту картинку, которая нужна

раскрыть ветку (4)
Автор поста оценил этот комментарий

Дело в том, что GM_xmlhttpRequest возвращает именно текст HTML, а насколько я понял querySelector можно использовать только в "скомпилированной странице" (не знаю как правильно назвать это). Поэтому и приходится выбирать скрины через регулярные выражения.

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

Еще очень полезно вам было бы почитать про делегирование событий, рассматривая скрипт рутора, я увидел, что вы вешаете обработчики на строки таблицы, выбираете две коллекции 125 и 124 элемента. Проще было бы повесить один обработчик на tbody. 


https://learn.javascript.ru/event-delegation


Подробнее можно прочитать тут

раскрыть ветку (2)
Автор поста оценил этот комментарий

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


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


((e.which===1) && ((e.srcElement.tagName.toUpperCase()==="TD") || (e.srcElement.tagName.toUpperCase()==="DIV"))) 


Отличное замечание. Спасибо! 

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

У объекта события есть атрибут target

Автор поста оценил этот комментарий
у меня после обновления мозилы перестали вообще скрипты работать в greasmonkey, ни в какую. Может знаешь почему?
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку