«Старая» Opera 12.17
Лучший браузер для современного Веба
Вс, 22.10.17, 20:16:30
Реклама
Пользовательские скрипты для Opera


Пользовательские скрипты для Opera

[07.03.11, 16:55:47]

► Пользовательские скрипты для Opera


Как известно, пользовательские скрипты (далее просто "скрипты" или "UserJS") применяются для изменения и дополнения содержимого веб-страниц необходимыми функциями.

Ниже, в алфавитном порядке, приведены описания свыше 70 наиболее известных скриптов для браузера Opera.


Напомню, что для установки UserJS достаточно скопировать файл в вашу папку UserJS. Если её ещё нет, то создайте папку (например, Opera\userjs) и укажите её в меню Настройки → Дополнительно → Содержимое → Настройки JavaScript...


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


Также следует заметить, что в Opera 9.5+ несколько изменена работа со скриптами, точнее исправлен баг с неверным считыванием интернациональных символов. И соответственно, скрипты содержащие такие символы, следует пересохранить в кодировке UTF-8, без BOM.


a-lib-stacktrace.js и a-lib-xmlhttp-cd.js - Реализация кросс-доменного XMLHttpRequest для Opera.
aagmfunctions.js - Эмулирует некоторые функции Greasemonkey. Используется для обеспечения лучшей совместимости со скриптами от FireFox.
aa_localStorage.js - Эмулирует localStorage в Opera 8.5-10.1. Необходимо создание MIME типа (CtrlF12Дополнительно → Загрузки → Добавить...) «text/lse» с опцией «Открыть в другой программе» «...\userjs\aa_localStorage.js».
adblock.js - Блокировщик (текстовой) рекламы, с использованием только userjs. Жмёте AltShiftB и кликаете на рекламу. Если кликать с зажатой клавишей Alt, то при блокировании не будут учитываться номера элементов на странице, что иногда полезно. AltShiftE позволяет отредактировать или удалить стили. Кнопки для вызова этих функций доступны в readme полной версии.
allinbackground.js - Открывает ссылки в фоне по Ctrl + Click.
allow-ini-variables.js - Позволяет использовать внутренние переменные Opera (%c, %t) в JavaScript-е.
alt2title.js - Если не задан атрибут title, то копирует в него содержимое атрибут alt. Это нужно для "правильного" отображения атрибута alt в качестве всплывающей подсказки у картинок, как это делает IE. (let-me-see-img.js обычно лучше)
autocopy.js - Копирует выделенный текст с форматированием в буфер обмена. Только для Windows.
autosizer.js - Подгоняет размер изображений открытых на отдельной странице. Включает режимы "Original", "Shrink to Fit", "Maximize", "Fit to Width" и "Fit to Height". Обновлённая версия здесь. А здесь версия для Opera 9.5.
bbcode.js - Вставляет в форму ответа любые BBCode и HTML тэги.
block-external-scripts.js - Блокирует загрузку скриптов с других доменов. Это убирает рекламу реализованную на js, например, Google AdSense или "всплывающие окна v2.0", наподобие 2baksa.net.
blockexternal.js - Блокирует скрипты, картинки, фрэймы и флэшки с других доменов. В большинстве случаев это реклама. Имеется белый список.
block_external.js - Более продвинутая вариация на ту же тему от Mikivanch. Кроме прочего, позволяет блокировать картинки по размеру. Не блокирует скрипты.
BlockIt.js - Блокер скриптов. Реализует часть функций расширения NoScript для FireFox.
bug-me-not-login-fetcher.js - Используя сервис BugMeNot.com ищет логины и пароли для сайтов требующих аутентификации. Вызывается по CtrlShift + Double Click. Версия для Opera 10 есть здесь.
convert2phf.js - Сохраняет страницу в phf или mht. Страница сохраняется со всеми изменениями сделанными с помощью javascript.
coolirisalike.js - При зажатии Ctrl и наведении курсора мышки на ссылку, показывает окно предпросмотра. (попытка реализовать аналог Firefox-ового расширения Cooliris Previews).
devConsole.js - Консоль разработчика. Для работы в качестве UserJS замените первую строчку «(function()» на «function ujs_devConsole()», а последнюю «})()» на«}» и используйте кнопку: Консоль разработчика.
disable-script.js - Блокирует все скрипты на сайтах, но позволяет использовать UserJS.
dlembed.js - Двойной клик по пустому месту страницы, добавит перед каждой флэшкой ссылку для её скачивания. Существует версия в виде кнопки.
DocumentViewer.js - Показ в браузере документов формата pdf, ppt, doc, xls используя веб-сервисы.
extra-download-links.js - Добавляет ссылки на картинки и флэш в боковую панель "Ссылки". Здесь более новая версия.
fix-content-type.js - Исправляет веб страницы, которые неправильно отдаются сервером как plain text (вместо HTML).
fix-gzipped-pages.js - Исправляет дважды сжатые gzip-ом страницы.
fix-long-title.js - Opera не может сохранить страницы со слишком длинным заголовком. Скрипт это исправляет.
FlashBlock.js - Блокировщик флэша для Opera 9.5-10.5. Аналог расширения Flashblock для Firefox.
get-link-info.js - Выдаёт информацию о ссылке. А именно: размер, дату, контент тип. Достаточно глюкав и потребляет больше трафика чем отдельные утилиты. Настоятельно рекомендуется применить фикс.
google-translate.js - Перевод текста, в том числе выделенного и в форме ответа, с помощью Google Translate.
google-translation with tooltip - Вариация на ту же тему от Ayush, ориентированная на перевод отдельных слов.
hide-objects.js - Скрывает флэш на страницах. Разблокировка двойным кликом. (Flash-блокер лучше).
hide-js-popups.js - Скрывает плавающие окна созданные с помощью javascript.
highlighter.js - Подсвечивание результатов поиска. В том числе в Google и с использованием регулярных выражений.
HighlightText.js - При нажатии на кнопку, изменяет цвет текущего выделения на жёлтый и запоминает это в кукисах. Аналог расширения Line Marker для FireFox.
image_reloader_for_opera.js - Подгрузка изображений по Ctrl + Click или зажатию левой кнопки мыши. Версия для Opera 9.5.
keyboard.userjs.js - Виртуальная клавиатура, которая добавляется к тестовым полям на странице.
let-me-see-img.js - На месте невидимых незагруженных изображений показывает рамку. Кроме того, укорачивает слишком длинные надписи на месте изображений и копирует содержимое атрибута alt в title.
link-alert.js - Рядом со ссылками показывает иконки зависящие от того куда они ведут. Достаточно глюкав. Лучше использовать links-with-icons.css.
linkifier.js - Делает кликабельными текстовые ссылки. Могут быть проблемы со скоростью. Рекомендую использовать вместо данного скрипта соответствующую кнопку.
linkify-txt.js - Делает кликабельными ссылки в текстовых файлах.
logger.js - Записывает в файл историю посещённых страниц. Нужна Java.
middleclickJSOverride.js - Обеспечивает правильную работу, в случае клика колёсиком по javascript-ссылке.
mouse-gesture-track.js - Служит для визуализации мышиных жестов. Должна стоять галочка "Позволить контролировать правую кнопку мыши". Скрипт для старых версий Opera находится здесь. А вариант использующий canvas здесь.
multipopup.js - Красивые полупрозрачные подсказки с дополнительными возможностями. Не забудьте отключить встроенные. Достаточно конфликтен.
no_meta_redirect.js - Отключает meta-редирект.
noclicktoactivate.js - Избавляет от необходимости дважды кликать на флэшку. Версия для Opera 9.5 здесь.
open-in-background-with-long-press.js - Открывает новую вкладку в фоне при зажатии ссылки на пол секунды. Для Opera 11+ есть одноимённое расширение: open-in-background-with-long-press. Для правильной работы скрипта и расширения требуется дополнительная настройка: Ctrl+F12 → Расширенные → Содержимое → Настроить JavaScript... → ☑ Позволить окнам терять фокус - поставить галку.
open-in-new-window.js - Заставляет все ссылки открываться на новой странице. Работает только на сайтах указанных в начале скрипта. Для работы в Opera 10.5 замените 'load' на 'DOMContentLoaded'. Готовый вариант для Opera 10.50+, работающий на всех сайтах, начинающихся с http://, можно скачать здесь: open-in-new-window.js.
open-in-new-window-1-1.js - Вариация на тему предыдущего скрипта. Открывает все ссылки ведущие на другие сайты, на новой странице. А для ссылок ведущих на файлы, наоборот, убирает открытие на новой странице.
open_browser.js - Открывает указанные сайты в заданном браузере. Только для Windows.
operaflag.js - Показывает в верхнем правом углу страницы флаг страны в которой хостится сайт. Аналог расширения для Firefox FlagFox. Для Opera 11+ есть расширение Flag Button.
ops.js - Автозаполнение форм. Ещё два варианта есть здесь.
ospell.js - Онлайн проверка орфографии в форме ответа. Для включения русского, поставьте: «ENGINE: 1» и «defaultLang: 'ru'».
pdfHandler.js - Избавляет от пустой страницы при открытии файлов *.pdf, *.doc и *.xls.
Remove_it_permanently-for_Opera.js - Удаляет "кликнутый" элемент страницы. Насовсем. Только для Windows.
removeblank.user.js - Удаляет все атрибуты «target="_blank"», которые вызывают открытие ссылки на новой странице. Для работы в Opera 10.5 замените 'load' на 'DOMContentLoaded'.
robosticky.js - "Клейкие записки" на страницах.
safe-alert.js - Позволяет остановить появление alert-ов на странице.
scroller.js - Даёт возможность скроллить страницу, зажав Ctrl + левую кнопку и передвигая мышь.
seobar3.js - Инструмент для специалистов по продвижению веб-сайтов. Для открытой в браузере страницы SEObar может отображать следующую информацию: Alexa Traffic Rank, Google Page Rank, Тематический индекс цитирования Яндекса.
show-ip.js - Показывает в нижней части страницы, IP текущего сайта (для чего нужна Java) и ваш собственный.
Smilize.user.js - Преобразует текстовые смайлики (например, :), :-), :d, :D и т.д.) в анимированные графические. Требует aagmfunctions.js.
snap-links.js - Позволяет открыть сразу много ссылок, просто обведя их.
snap-images_userjs.js - Позволяет открыть несколько изображений, обведя их.
textarea-backup-localstorage.user.js - Запоминает и позволяет восстановить текст набранный в форме ответа.
text-replacement.js - Заменяет заданный текст на всех страницах.
titleprotector.js - Не позволяет страницам менять заголовок окна браузера с помощью JavaScript.
xerath-plugsome-toolbar.js - Показывает возле каждой флэшки панельку с кнопками Reload, Save, Play и Pause. Две последних работают не везде.
xerath-power-drag.js - Позволяет изменять размер textarea (формы ответа) и изображений с помощью мышки.
xml-tree.user.js - Показывает XML файлы в виде дерева и с подсветкой синтаксиса.
zoom-image.user.js - Позволяет уменьшать и увеличивать отдельные изображения.
zz-spoof-id.js - При выборе в браузере маскировки под IE или Firefox, обеспечивает полную маскировку и для javascript, убирая window.opera и создавая некоторые специфичные для этих браузеров свойства. Существует дополнительный скрипт для Opera 9.5+, который эмулирует эту особенность IE, нужную на некоторых сайтах.

Сайт специфичные скрипты

ExpertsExchangeFilter.user.js - Этот скрипт очищает experts-exchange.com от предложений заплатить за просмотр ;-) и показывает весь контент.
ikariam.js - Скрипты для игры Ikariam.
lj_unfolder.user.js - А этот скрипт добавляет в ЖЖ, возможность подгружать комментарии из длинных тредов прямо в страницу.
rapidshare_com.js и другие - Упрощают скачивание с файлообменников.
vkopt.js - Скрипты для ВКонтакте.
youtube_com.js и другие - Скрипты для упрощения скачивания флэш-видео.
zaycev_net.js и другие - Ну а эти скрипты позволяют легче скачивать музыку.

Микро-faq для разработчиков

Q: Что из себя представляет userjs?
A: Это обычный javascript, выполняемый на каждой странице (впрочем, это настраиваемо) и в её контексте. Из последнего следует, что вам следует избегать создания глобальных переменных и функций, которые могут конфликтовать с имеющимися на странице (обычным решением является использование анонимной функции). Кроме того, userjs способны использовать несколько функций из объекта window.opera, недоступных обычным скриптам и предназначенных, в основном, для исправления ошибок на веб-страницах. Познакомиться с некоторыми тонкостями написания userjs, можно на userjs.org.
Q: В какой момент он запускается?
A: Перед первым скриптом на странице, а при отсутствии скриптов аналогично "DOMContentLoaded", т.е. после загрузки самой страницы (только страницы, без изображений и т.п.). Учитывая, что скрипты обычно присутствуют уже в "<head>", в большинстве случаев userjs будет запускаться ещё до загрузки "<body>". Так что если вам нужна работа с DOM, потребуется использовать document.addEventListener('DOMContentLoaded', function(){...}, false).
Q: Как в userjs получить информацию с другого домена?
A: Используйте cross-document messaging. В качестве простого примера см. show-ip.js.
Q: Почему userjs не работают на https?
A: Из соображений безопасности. Но вы можете включить это здесь.

Некоторые баги:

  • «window.getSelection()» - Теряются переносы строк. Используйте «document.getSelection()» или посмотрите как обойдён этот баг в quick-reply.js.
  • «window.getSelection().containsNode()» - Всегда false.
  • «document.selection.type» - «None», даже если существует выделение. Opera 9.5+
  • «mousedown» - Перестаёт работать драг-н-дроп на странице. Используйте вместо него «BeforeEvent.mousedown».

Отличия Opera 10.5 от предыдущих версий

  • Больше не поддерживается «document.addEventListener("load", ...)» - Используйте вместо него «window.addEventListener("load", ...)» или «document.addEventListener("DOMContentLoaded", ...)»
  • Убран объект «document.selection» - Прямой замены нет. Потребуется изменение кода для использования «document.getSelection()» или «window.getSelection()»
  • Убрано свойство «element.text» - Оно заменяемо на «textContent» или на не вполне стандартное, но поддерживаемое всеми версиями оперы «innerText»

© А. Рузанов, 16.03.2008 (обновлено 28.03.2010)

Источник: http://ruzanow.ru/page.php?5

Категория: Настройки, подсказки | Добавил: Сильвестр (07.03.11) | Автор: Алексей Рузанов W
Просмотров: 33431 | Комментарии: 2 | Теги: Настройки, opera, UserJS, подсказки
Всего комментариев: 2
2 anonim   (30.04.12 13:48:30)
Хорошая подборка для небольшого увеличения удобства.

1 irina   (18.07.11 21:40:10)
много полезных дополнений.спасибо!

Зарегистрируйтесь или войдите, чтобы добавить комментарий.
Опрос
Ваш основной браузер
Ответов: 776
Ваш браузер:
Хостинг от uCoz