Я пишу сценарий Greasemonkey, который имеет довольно мало пользовательских настроек (просто используя GM_getValue и GM_setValue).
Что я хотел бы сделать, так это создать страницу настроек для сценария и добавить ее на сайты @ include-d. Так, например, он будет работать на:
@include http://www.greasemonkeyedsite.com/*
@include about:myScriptConfig
Затем скрипт проверит URL сайта, к которому он обращается. Если это о: один, он будет создавать и отображать страницу настроек, в противном случае он просто запустит скрипт как обычно.
Я придумал это под впечатлением, что вы можете напечатать about: (что угодно), и это будет хорошо, только текст, следующий за about: как содержимое страницы. Я помню эту работу в прошлый раз, когда проверял, но это было много лет назад.
Кажется, что вы не можете просто отображать произвольные данные, используя about: x больше. Firefox просто отображает ошибку «URL-адрес недействителен и не может быть загружен».
Я знаю о данных: протокол URI, но он не подходит, поскольку ввод его вручную в адресную строку не ведет к его собственной странице.
Есть ли какое-то эквивалентное поведение? Или мне просто понадобится кнопка «настройки» в верхнем углу greasemonkeyedsite.com, которая скрывает и показывает раздел настроек?