na miejscu noscript stany:
Na przykład ustawienie noscript.allowedMimeRegExp
wartości preferencji na
FRAME@https?://somesite\.com
FONT@https?://some-other-site\.com
WebGL@https://www\.khronos\.org
na stałe zezwoli na dowolne ładowanie FRAME / IFRAME z somesite.com, czcionek internetowych z some-other-site.com i zawartości WebGL 3D z https://www.khronos.org
.
Nie sądzę, że ABE może to zrobić. Jednym z hackerskich sposobów włączenia czcionki tylko dla określonej witryny / domeny jest użycie Vimperatora / pentadaktyla i automatyczna zmiana ustawienia MimeRegExp w przypadku zdarzenia LocationChange. Aby przywrócić ustawienie podczas opuszczania strony, możesz użyć tej prostej funkcji ( pobranej od Anekos ) w .vimperatorrc, która używa wyrażenia z ujemnym wyprzedzeniem:
js <<EOM
function add_AutoCommand(URI, onEnter, onLeave) {
let entered = false;
autocommands.add('LocationChange', '(?!' + URI + ')', function () {
if (entered) {
entered = false;
onLeave();
}
});
autocommands.add('LocationChange', URI, function () {
onEnter();
entered = true;
});
}
add_AutoCommand(https?://allow-font-on-this-site\.com,
:set! noscript.allowedMimeRegExp="FONT@https?://some-other-site\.com",
:set! noscript.allowedMimeRegExp=" "
);
EOM
Nie testowałem tego, ale zrobię to.
EDYCJA : tak powinno być
add_AutoCommand('https?:\/\/allow-font-on-this-site\\.com.*',
function(){options.setPref("noscript.allowedMimeRegExp",
"FONT@http://fonts.gstatic.com")},
function(){options.setPref("noscript.allowedMimeRegExp",
"")}
);
... ale noscript nie wybiera preferencji, chyba że strona zostanie przeładowana, więc albo przeładuj ręcznie, albo użyj tabs.reload(config.browser.mCurrentTab, false);
Wydaje się, że powinieneś ustawić wartość logiczną i limit czasu, aby zapobiec ponownemu uruchomieniu (i zapętleniu) przeładowania przez LocationChange. Być może dla wartości logicznej można użyć innego autocmd zdarzenia PageLoadPre. To robi się dość brzydkie, wiem. Przepraszam.
ps. bardziej użyteczną aplikacją prostego przełączania wstępnego opartego na adresach URL jest oczywiście zmiana katalogu pobierania.
EDYCJA (2017): Za pomocą uBlock Origin możesz w szczególności celować w określone typy obiektów HTML, plików lub zachowań.
Zarówno reguły dynamiczne, jak i statyczne określają, że pochodzenie jest dozwolone dla domeny / adresu URL. Używam tego od kilku lat. Typy obejmują czcionkę, a także skrypt wbudowany , arkusz stylów , obraz , obiekt , skrypt , xmlhttprequest , sub_frame , media , websocket , popunder i popup .
przykładowe zasady:
* * 3p block
no-remote-fonts: * true
no-remote-fonts: allow-font-on-this-site.com false
allow-font-on-this-site.com font-cdn.org noop
co oznacza:
- zablokować żądanie strony trzeciej z dowolnej strony w dowolne miejsce
- blokuj czcionki innych firm na dowolnej stronie z dowolnego miejsca
- ponownie włącz czcionki innych firm na stronie w domenie allow-font-on-this-site.com z dowolnego miejsca
- opcjonalnie ponownie włącz prośbę na naszej stronie do źródeł w domenie font-cdn.org
Dzięki noop („brak operacji”) nadal stosujemy statyczne filtrowanie reguł (powszechnie definiowane w regułach rozproszonych znanych jako listy blokujące reklamy lub listy złośliwych reklam).