Помимо настоящих расширений / дополнений, можно также использовать скрипты 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 имеют встроенную поддержку. Смотрите Википедию для более подробной информации о браузере.