Что такое пользовательские скрипты. Пользовательские JavaScript и Greasemonkey

Что такое юзерскрипты?

Кратко: юзерскрипт - это программа, написанная на языке JavaScript , хранящаяся на компьютере пользователя и подключаемая браузером на определенных страницах. Юзерскрипт представляет собой файл с расширением .user.js (именно по расширению браузеры понимают, что файл является юзерскриптом), содержащий метаданные и непосредственно javascript -код.

Подключение юзерскриптов:

Для установки скрипта необходимо кликнуть по иконке Greacemonkey и выбрать пункт "Создать скрипт..."

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

Список готовых юзерскриптов:

Отключение пользовательских стилей:

// ==UserScript== // @name Shiki User Style Remove // @namespace http://сайт/ // @version 1.0 // @description Disabled Shiki User Styles // @updateURL https://openuserjs.org/meta/kaur/Shiki_User_Style_Remove.meta..org/* // @grant none // ==/UserScript== var func = function() { $("#custom_css").remove(); }; $(document).ready(func); $(document).on("page:load", func); $(document).on("turbolinks:load", func);

Реальный рейтинг Shikimori (по умолчанию отображается рейтинг MAL):
318x181
Последняя версия и обсуждение в отдельной теме
Автор @ Oniii-chan

Отображение дат в истории:
1184x249
Для отображения даты на русском заменить en-GB на ru-RU .

1..org/* // @match http://сайт/* // @grant none // ==/UserScript== var func = function() { "use strict"; $(".date").text(function() { return (new Date($(this).attr("datetime")).toLocaleDateString("en-GB", { day: "numeric", month: "short", year: "numeric", hour: "numeric", minute: "numeric" })); }); }; $(document).ready(func); $(document).on("page:load", func); $(document).on("turbolinks:load", func); $(document).on("postloader:success", func);

Кнопка для скроллинга к позиции нажатия кнопки "наверх" в левой части экрана
Скрипт добавляет кнопку в левой части экрана, которая идентична кнопке "наверх", но перемещает вниз к позиции нажатия кнопки "наверх", подобная механика реализована в ленте ВК

там, где написано 500 - скорость скроллинга на обратную позицию, 500 я посчитал достаточным
чтобы изменить этот элемент, вроде добавить эффект при hover нужно использовать класс.b-to-back и написать соответствующее правило в CSS


// ==UserScript== // @name Back to the last possition:Shikimori // @namespace http://сайт/ // @version 1.0 // @description try to take over the world!.org/* // @grant none // ==/UserScript== var scroll_bottom = 0; $(".b-to-top").css("z-index", "10"); $(".b-to-top").click(function() { scroll_bottom = $("body").scrollTop(); $("body").append("

"); $(".b-to-back").click(function() { $("html, body").animate({ scrollTop: scroll_bottom }, 500); $(".b-to-back").remove(); }); });

Автоматическое скрытие меню при прокрутке.
Меню скрывается при прокрутке вниз. Прокрутка вверх, наведение курсором на вверх станицы и прокрутка до конца страницы заставляет меню снова появится. Установка через сайт greasyfork.org:

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

Например , с помощью пользовательского скрипта можно сделать так, чтобы после загрузки
любой страницы поисковика Google.ru логотип Гугла заменялся на логотип Яндекса, а кнопка
«Поиск» - на «Найти» (пример выдуманный). Естественно, эта замена будет доступна только тем
пользователям, у которых установлен данный пользовательский скрипт.

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

В браузере Opera пользовательские скрипты (UserJS) поддерживаются «из коробки»: необходимо только настроить папку, в которой будут храниться скрипты.

Для этого в меню «Инструменты» выберите пункт «Настройки...»; кликните по вкладке «Дополнительно»; слева выберите категорию «Содержимое» и нажмите «Настроить JavaScript...». В открывшемся окошке найдите кнопку «Обзор...» под надписью «Папка пользовательских файлов JavaScript», кликните по ней и выберите любую удобную вам папку. Лучше всего, чтобы это была отдельная пустая папка, например, «C:\Program Files\Opera\myUserJS».

В браузере Mozilla Firefox для работы с пользовательскими скриптами необходимо установить дополнение «Greasemonkey» (Засаленная обезьяна ). Для этого откройте страницу «Greasemonkey » на сайте дополнений Firefox и нажмите зеленую кнопку «Добавить в Firefox», после чего вас предупредят о безопасности. Подождите несколько секунди и нажмите кнопку «Установить сейчас».

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

В правом нижнем углу окна Firefox появится маленькая обезьянья рожица, по которой можно кликать левой кнопкой мыши, чтобы быстро включать/отключать сразу все скрипты, а правой кнопкой - чтобы отключать отдельные скрипты или же чтобы открыть экран управления скриптами. Оттуда можно посмотреть список всех установленных скриптов, удалить ненужные и так далее. Управление скриптами также доступно в меню «Инструменты», пункт «Greasemonkey».

Теперь при попытке открыть файл пользовательского скрипта (например, при клике по ссылке на скрипт из клуба) будет открываться окошко Greasemonkey, в котором вам будет предлагаться установить скрипт (кнопка «Начать установку» становится активной после трехсекундного обдумывания вопросов безопасности):

В браузере Google Chrome пользовательские скрипты (UserJS) поддерживаются «из коробки»: необходимо только настроить папку, в которой будут храниться скрипты, и запустить сам браузер необходимыми параметрами.

Во-первых .
Создайте папку, где будут храниться пользовательские скрипты, на вашем компьютере. Пусть для примера это будет папка «E:\Nick\Scripts».

Во-вторых .
Сохраните в этой папке любой понравившийся вам пользовательский скрипт, который совместим с Google Chrome (в нашем клубе он будет помечен меткой «chrome»). Для этого откройте скрипт в браузере, нажмите +[S] и укажите ту самую папку с пользовательскими скриптами и нажмите «Сохранить / Save»:

Обратите внимание , имя файла скрипта должно заканчиваться на .user.js

В-третьих .
Запустите Google Chrome с параметрами, разрешающими запуск пользовательских скриптов. Для этого сначала закройте браузер, потом щелкните правой кнопкой мыши на иконке Google Chrome на рабочем столе, выберите «Свойства» и в открывшемся окошке перейдите на вкладку «Ярлык». Вам необходимо изменить поле «Объект». Обычно оно содержит запись вида:
"C:\Documents and Settings\%USERDIR%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe"
Добавьте к ней после закрывающей кавычки параметры запуска: --enable-user-scripts --user-scripts-dir=E:\Nick\Scripts
Не забудьте изменить путь E:\Nick\Scripts на тот, который вы используете для хранения скриптов.

В-четвертых .
Запустите Google Chrome! Скрипты работают!

Вопросы безопасности . Пользовательские скрипты могут представлять собой опасность для пользователя. Используйте пользовательские скрипты только из доверенных источников, и помните, что лучшая защита от любых опасностей - это ваша голова.

О такой возможности я знал давно. Вообще я считаю что в программировании нельзя быть дока. Потому что слишком много подобластей и нюансов. Нужно просто представлять что возможно, какие технологии есть и где про них прочитать если потребуется. Все остальное — дело техники.

Что такое пользовательские скрипты и зачем они нужны

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

Пользовательские скрипты реализуются некоторыми браузерами на нативном уровне, кажется. Вроде Опера это умеет, например. Но народную любовь снискал Greasemonkey — плагин для браузеров, который как раз позволяет выполнять пользовательские скрипты.

Мне это все было как-то без надобности. Ну что можно сделать жабаскриптом? Обычно это все касается изменения внешнего вида страницы. Убрать колонку, изменить размер чего-нибудь, показать что скрыто или наоборот. Так вот, мне это все было не нужно. А теперь у меня есть блог о футболках , куда я часто постю картинки с сервиса printdirect.

Процесс постинга картинки выглядит так:

  • Я захожу на страницу товара
  • Кликаю по изображению
  • Кликаю по большой картинке правой кнопкой, выбираю "Копировать ссылку на изображение".
  • Иду в редактор поста на tshirt-fan.ru и вставляю ссылку на изображение в поле вставки изображения визуального редактора.
  • Заполняю поля alt и title картинки в том же редакторе
  • Перехожу во вкладку "Положение" и в выпадающем меню "Класс" ставлю fcenter (это CSS класс для центрования картинки)
  • Затем перехожу снова на страницу товара, выделяю адрес страницы
  • Перехожу в редактор, выделяю изображение, нажимаю на "установить ссылку"
  • В поле "Адрес" я ввожу скопированный адрес товара.
  • Заменяю в этом адресе http:// на /go/ чтобы ссылка была внутренней и чтобы при переходе добавлялся партнерский код.

Вот столько всяких действий чтобы вставить ОДНУ картинку с ссылкой. Это очень, очень утомительно.

Поэтому я решил автоматизировать этот процесс. Потому что я ленивый программист.

Я взялся за изучение Greasemonkey. Оказалось, что там все не просто, а очень просто. По сути, это просто JS код, который снабжен парой служебных директив.

Greasemonkey скрипт для tshirt-fan.ru

Вдохновившись, я сразу захотел использовать jQuery. Лень мне писать на чистом JavaScript, видите ли. Хотя задача простая, если честно. Короче, я нашел как подключать jQuery к Greasemonkey и заюзал этот код. Он загружает jQuery с хостинга гугла. Обычно я загружаю с хостинга Яндекса, но какая разница?

Теперь надо было только написать сам скрипт. Все оказалось просто.

// Весь Greasemonkey код ниже function letsJQuery() { var full = $("#full_img_front").attr("src"); //хватаем адрес большой картинки if(full) { //если он есть — мы на нужной странице var url = location.href; //берем адрес страницы url = url.replace("http://", "/go/"); //изменяем его var text = $("h1.main").html(); //берем имя товара //формируем код для отображения var code = "
"; $("div.images").append(code); //показываем его } }

Теперь страница товара у меня выглядит так.

Daily installs 904 Total installs 500,637 Ratings 90 10 51 Created 2019-04-27 Updated 2019-04-27
  • Krunker 1.9.6 Aimbot and Auto Aim Hack - We Have Been having issues with greasyfork so i moved the script to docs so link is https://docs.google.com/document/d/1Ir39KPGyIzRLe7YvvjQgolWh_R5LU36re1saQ3x4BJQ/edit?usp=sharing

    Author Zack Rowell Daily installs 699 Total installs 10,841 Ratings 3 1 1 Created 2020-01-09 Updated 2020-01-15
  • VIP Video tencent, iqiyi, mgtv, youku, Blibili, sohu, tudou (2020.01.23) - tencent, iqiyi, mgtv, youku, letv, Bilibili, sohu, tudou, 1905(Containing google ads)

    Author HOPETIME Daily installs 664 Total installs 15,092 Ratings 19 0 1 Created 2020-01-01 Updated 2020-01-23
  • MooMod |The Hack To MooMoo.io | Only Uptade!(AHT)(2020) - MooMod| Best Hack! 10,000 Install! All-Hack-in-One! Fealture"s:【MooMod About Menu】【MooMod Modife Menu】【AutoHeal 3X】【InstaKill R】【Hat-Hacking Deffence And Speed】【Acc-Hacking Speed And Deffence】【MooMod-Map】【Hotkey" V-Spike F-Trap/BoostPad H-Turret N-Windmill】【Circle"s L-SpikeCircle O-TrapCircle I-WindmillCircle U-TUrretCircle】【Katana Key- < OR ,】【Musket Key- > OR .】【Hat-Macro Z-TankGear C-TurretGear B-SoldierHelmet】

    Author ¿BEXTİYAR ¿ Daily installs 530 Total installs 13,911 Ratings 4 3 1 Created 2019-11-27 Updated 2020-01-23
  • Krunker.io Hack - Krunker.io Hacks

    Author IAN Daily installs 449 Total installs 968 Ratings 0 0 1 Created 2020-01-21 Updated 2020-01-21
  • Local YouTube Downloader - Get youtube raw link without external service.

    Author 3142 maple Daily installs 491 Total installs 199,976 Ratings 662 8 8 Created 2018-06-10 Updated 2020-01-01
  • Remove web limits(modified) - Pass to kill most of the site, you can lift the restrictions prohibited to copy, cut, select the text, right-click menu.revised version

    Author qxin i Daily installs 324 Total installs 437,238 Ratings 1687 7 4 Created 2017-03-28 Updated 2018-07-02
  • Krunker.io (360,720,INSTANT NUKE, NEW GUN, AIMBOT, ESP, UNLIMITED AMMO, UNLIMITED HEALTH) - VERY USEFUL KRUNKER AIMBOT E.T.C HACK I HAVE BEEN WORKING ON FOR A WHILE

    Author TRAX Daily installs 246 Total installs 53,800 Ratings 5 1 10 Created 2019-11-04 Updated 2019-11-04
  • Krunker.io AIMBOT (UPDATED) Aimbot, ESP, TriggerBot, - UPDATED FREQUENTLY

    Author L.L.L. Daily installs 255 Total installs 150,712 Ratings 19 1 7 Created 2019-05-12 Updated 2019-05-12
  • MooMoo.io | 🐺LabyMod🐺 | 2020 - 【Hacks & Hackkeys】 ➜ 〖 AUTO HEAL - T 〗 〖 MOD - MENU - ESC 〗 〖 INSTAKILL - R 〗 〖 AUTOSPIKE - V 〗 〖 MORE FPS 〗 〖 AUTOCLAN - 2 OR ▼ 〗 〖 AUTOCHAT - 8 OR ▲ 〗 〖 BOOST & SPIKE - G 〗 〖 AUTOWINDMILL - N 〗 〖 HATMACRO 〗 〖 PREMIUM MAP 〗 〖 INSTAWINDMILL´S - O 〗 〖 INSTATRAPS / BOOSTPADS - I 〗 〖 CX insta - SPACEBAR 〗 〖 INSTASPIKE´S - Ü 〗 〖 AIMCURSOR 〗 〖 BIG SHOP 〗

    Author Cookie_or_die Daily installs 352 Total installs 1,461 Ratings 1 1 0 Created 2020-01-13 Updated 2020-01-13
  • Skribbl.io AUTO GUESS - Skribblio Hacks - Best Skribbl Cheat 2019 - Skribblio Mods Features: Auto Guess, Draw Bot, Word Helper, Save Image, FPS, Adblock

    Author iomods.org Daily installs 255 Total installs 63,443 Ratings 5 1 0
  • Agar.io 2019 Bots AgarMinions.tk | Cheap Agar.io + Agario Clone Games 2019 Bots - Best Agar.io & Agario clones games bots + Big Bots For Sale!

    Author AgarMinions.tk 2019 Bots Daily installs 193 Total installs 79,557 Ratings 24 1 1 Created 2019-03-03 Updated 2019-03-03
  • Mod|God Juan…. - [G] For Spike + BoostPad, [N] For 1 Windmills, [O] For 5 Windmills, [H] For Turrets [F] For BoostPad, [V] For Spike [P] For 4 Walls, [M] for Active/Unactive Auto Hat and [M] For 4 Spikes, [T] for Active/Unactive AutoHeal

    Author HyPer~ Daily installs 186 Total installs 19,302 Ratings 9 1 1 Created 2019-11-14 Updated 2019-11-14
  • Greasyfork Search with Sleazyfork Results include - Merge adult results of sleazyfork into greasyfork when the script is no longer anonymously available, add rating score and version for scripts then

    Author hoothin Daily installs 184 Total installs 110,613 Ratings 1330 4 0 Created 2016-10-08 Updated 2019-08-02
  • Remove web limits - Pass to kill most of the site, you can lift the restrictions prohibited to copy, cut, select the text, right-click menu.

    Author Cat73 Daily installs 189 Total installs 497,105 Ratings 2250 4 0 Created 2015-11-23 Updated 2016-12-18
  • Diep.io AIMBOT - Diepio Hacks - Best Diep Cheat 2019 - Diepio Mods Features: Color Changer, Colorful Items, Aimbot, Fire Bot, Auto Respan, FPS, Adblock

    Author iomods.org Daily installs 180 Total installs 48,778 Ratings 10 0 11 Created 2019-04-12 Updated 2019-04-27
  • - Currently trusted by over 100,000 users!

    Author Sam-DevZ Daily installs 173 Total installs 403,943 Ratings 304 54 62 Created 2018-02-24 Updated 2019-07-01
  • 视频广告自动跳过 - auto skip video ads!

    Author wulududu Daily installs 175 Total installs 2,282 Ratings 16 0 0 Created 2020-01-05 Updated 2020-01-18
  • Surviv.io AIMBOT - Survivio Hacks - Best Surviv Cheat 2019 - Survivio Mods Features: scope mod, faster duo/squad, auto respawn, auto reload, aimbot, firebot, FPS, Adblock

    Author iomods.org Daily installs 201 Total installs 38,498 Ratings 4 0 4 Created 2019-04-12 Updated 2019-04-21
  • Krunker plus v3 - "I"m aware krunker hacks are back. We are gonna work on fixing them as much as we can! -Sidney_de_Vries"

    Author bobby013712345 Daily installs 1,043 Total installs 1,161 Ratings 0 0 0 Created 2020-01-22 Updated 2020-01-22
  • Kill Baidu AD - Just Kill Baidu AD

    Author hoothin Daily installs 152 Total installs 305,524 Ratings 964 2 3 Created 2016-10-21 Updated 2019-01-31
  • Userscript+ : Show Site All UserJS - Show current site all UserJS,The easier way to install UserJs for Tampermonkey.

    Author jaeger Daily installs 152 Total installs 179,475 Ratings 1871 3 2 Created 2016-11-02 Updated 2019-09-12
  • Pixiv Plus - Focus on immersive experience, 1. Block ads, directly access popular pictures 2. Use user to enter the way to search 3. Search pid and uid 4. Display original image and size, picture rename, download original image | gif map | Zip|multiple map zip 5. display artist id, artist background image 6. auto load comment 7. dynamic markup work type 8. remove redirection 9. single page sort 10. control panel select desired function github: https:/ /github.com/Ahaochan/Tampermonkey, welcome to star and fo

    Author Ahaochan Daily installs 152 Total installs 70,505 Ratings 504 4 1 Created 2017-10-14 Updated 2020-01-09
  • Shellshock.io AIMBOT - Shellshockio Hacks - Best Shellshockers Cheat 2019 - Shellshockio Mods Features: Aimbot, Firebot, Faster Speed, Auto Heal, FPS, Adblock

    Author iomods.org Daily installs 159 Total installs 28,814 Ratings 7 1 1 Created 2019-04-12 Updated 2019-04-21
  • Krunker Skid - bushfire-disaster-appeal - krunker.io modification

    Author Skid Lamer Daily installs 90 Total installs 3,478 Ratings 8 0 0 Created 2020-01-01 Updated 2020-01-10
  • Agar.io Split HACK - Agario Hacks - Best Agar Cheat 2019 - Agario Mods Features: Split Hack, Zoom Hack, Feed Hack, Free Skins, FPS, Adblock

    Author iomods.org Daily installs 109 Total installs 16,375 Ratings 3 0 1 Created 2019-05-31 Updated 2019-05-31
  • The best Youtube Downloader, download video MP4, AVI, MP3, HD, 1080P, 2K, 4k & 8K - Download any video and music (audio) from Youtube, Twitter, Vimeo, Facebook, Instagram, SoundCloud, Dailymotion, Liveleak, Break, Imgur, Mashable, Reddit, 1TV, 9gag, VK, TED, youku, bilibili, IMDb, ESPN, Flickr, Bandcamp, pornhub, 9gag, VK.com, ok.ru, tv.com and 10,000 more sites for free. Also support to download subtitles. Free, fast and easy to use. No need to install any annoying softwares. Supporting MP4, WEBM, AVI, 3GP, FLV, H64, ACC, FLA, MP3, M4A, 8K, 6K,4K, 2K, 1080, 720, 480, 360, etc.

    Author hello123 Daily installs 128 Total installs 192,763 Ratings 352 7 28 Created 2018-06-11 Updated 2020-01-01
  • UltraType - A nitrotype autotyper.

    Author SkittyDev Daily installs 120 Total installs 11,004 Ratings 2 1 1 Created 2019-10-02 Updated 2019-10-02
  • MooJax (Stick to Katana / Musket + Katana or Greater Axe / Stick + Spinning Spikes)(Insta. Pro!) - MooJax - On Axion

    Author Jack LAL Daily installs 116 Total installs 2,258 Ratings 2 1 0 Created 2020-01-03 Updated 2020-01-03
  • Slither.io Invincible HackBot (Best Slither Bot and working 2020) - Slither.io Invincible HackBot by CTHack and Fixed by Jaime Argila

    Author Jaime Argila Daily installs 115 Total installs 15,948 Ratings 5 1 0 Created 2019-08-25 Updated 2019-12-12
  • Zombs.io Gold Generator Hack - subscribes xxxxDDDDD

    Author Oyun manyakları Daily installs 91 Total installs 13,893 Ratings 5 1 1 Created 2019-08-09 Updated 2019-08-09
  • Anti-Adblock Killer | Reek - Helps you keep your Ad-Blocker active, when you visit a website and it asks you to disable.

    Author reek Daily installs 111 Total installs 315,268 Ratings 1123 20 44 Created 2014-05-09 Updated 2016-11-17
  • Bilibili 港澳台 - Bilibili 港澳台, 解除区域限制 (修正大会员限制,添加国际友人看国内功能)

    Author Zealot Daily installs 121 Total installs 95,591 Ratings 224 5 2 Created 2018-12-23 Updated 2019-10-13
  • Nitro Type Car Hack (Dealership) - Get secret cars and skin teasers for dealership

    Author Zaven Lei2027-23 Daily installs 105 Total installs 24,552 Ratings 16 1 4 Created 2018-11-13 Updated 2018-11-13
  • Krunker 1.9.6 Hack - Hack for krunker.io 1.9.6

    Author 鬼滅の刃デース Daily installs 60 Total installs 3,152 Ratings 1 0 0 Created 2020-01-10 Updated 2020-01-10