Помимо настоящих расширений / дополнений, можно также использовать скрипты Greasemonkey . Обычно для этого требуется либо надстройка, либо поддержка встроенного браузера † . Но для не-HTTPS сайтов на Mac можно использовать GlimmerBlocker, чтобы добавить такой скрипт во все браузеры за один раз:
GlimmerBlocker реализован в виде http-прокси, поэтому стабильность Safari [или любого браузера, Arjan] не пострадает, поскольку он не использует хаки. Он даже совместим со всеми другими браузерами и другими собственными приложениями Mac OS X, использующими http, например NetNewsWire.
Вы всегда сможете обновить Safari [или любой браузер], не ломая GlimmerBlocker (или не ожидая выхода новой версии); и вы сможете обновить GlimmerBlocker без обновления Safari [или любого другого браузера]. Это значительно облегчает использование бета-версий [..].
Помимо простой блокировки ссылок на .swf
, можно также использовать его параметр Transform для перезаписи HTML. Но самое простое решение - это функция GlimmerBlocker для добавления любого JavaScript на любую страницу:
- Добавить новое правило (опционально, сначала добавьте новый фильтр для хранения правила)
- Установите для "Типа правила" значение «Белый список URL, при желании изменяя содержимое»
- На панели "javascript" добавьте источник, например, сценария AdBlock Greasemonkey от Алексея Рузанова.
Я не использовал реальное дополнение Алексея Рузанова, но в его скрипте Greasemonkey нажатие Option-F переключает белый список текущего веб-сайта. Чтобы временно включить какую-то определенную Flash, щелкните значок Flash, который отображается для заблокированного содержимого. Щелкните правой кнопкой мыши (или щелкните, удерживая клавишу Ctrl), этот значок, чтобы получить дополнительные параметры, включая копирование Flash-URL К сожалению, запоминается ли сайт в белом списке с помощью хранилища DOM или файлов cookie, и оба они зависят от браузера. Таким образом, включение Flash в одном браузере не включает его в другом.
И, конечно же, в качестве бонуса вы получаете блокировку рекламы GlimmerBlocker для простых HTTP-сайтов.
Однако будьте осторожны:
FlashBlock использует локальное хранилище HTML и, следовательно, может оставить след на локальном жестком диске для каждого сайта, который вы посещаете, независимо от того, использует ли он Flash и даже в режимах частного просмотра.
Это не может быть использовано для фильтрации защищенных HTTPS-страниц. Прокси не может заглянуть в контент, не говоря уже о том, чтобы изменить его. Более того, GlimmerBlocker также не может блокировать IP-адрес: значение "Host" на самом деле является значением заголовка Host, которое он не может видеть в трафике HTTPS. Кроме того, блокировка по IP-адресу проще сделать в файле hosts.
Даже при просмотре простой HTTP-страницы ссылки на ресурсы HTTPS также не могут быть заблокированы. Вы хотите, чтобы веб-сайты HTTP не сообщали Google и Facebook о том, что вы просматриваете, блокируя <iframe src="https://plusone.google.com/...">
вам действительно нужно изменить HTML- код страницы, которую вы ' повторного просмотра. Надстройки браузера работают там намного лучше и, вероятно, также обновляются при смене доменов. Тем не менее, для тех, кто настаивает на том, чтобы сделать это в GlimmerBlocker: можно переписать определенные домены для некоторого фиктивного. На панели "transform" установите «Only for content-type» в "any text type" и добавьте:
// Rewrite "plusone.google.com" to "plusone.google.com.blocked", and so on:
replace(/(plusone\.google\.com)/g, "$1.blocked");
replace(/(apis\.google\.com)(\/js\/plusone)/g, "$1.blocked$2");
replace(/(facebook\.com)/g, "$1.blocked");
replace(/(facebook\.net)/g, "$1.blocked");
replace(/(fbcdn\.net)/g, "$1.blocked");
Это все равно не удастся, если какой-то JavaScript записывает доменные имена способом, который не легко распознать при простой замене текста.
† Как и для Firefox, нужно оригинальное дополнение, но Opera и Chrome имеют встроенную поддержку. Смотрите Википедию для более подробной информации о браузере.