Как закрыть вкладку firefox из greasemonkey script?
У меня есть пользователь greasemonkey script с этой единственной строкой кода...
window.close();
но firefox не позволяет пользователю script закрыть окно (как сообщается сообщением об ошибке в консоли ошибок)
Есть ли проблема в этой проблеме?
Ответ 1
Вам нужно изменить настройки Firefox (about: config), чтобы разрешить это.
Шаги:
Перейдите в строку адреса и введите about: config
Перейдите к параметру dom.allow_scripts_to_close_windows
Установите значение true
Теперь ваш script может закрыть TAB с помощью 'window.close()'
например.
function closeTab(){
window.open('', '_self', '');
window.close();
}
Ответ 2
Так как Firefox обрабатывает код Greasemonkey с теми же привилегиями, что и код script на внешних сайтах, невозможно только разрешить код Greasemonkey закрывать окна, но не обычные скрипты.
Ответ 3
К настоящему времени некоторые из -monkies позволяют использовать опцию @grant для официальной разблокировки таких команд, как window.close(), без перехода к about: config. Например, в Tampermonkey:
// @grant window.close
// @grant window.focus
(Последний грант позволяет вам перефокусировать браузер на вашем окне.) Это позволит устранить ошибку.