Como posso fechar uma aba do firefox de um script greasemonkey?
-
11-07-2019 - |
Pergunta
Eu tenho um script de usuário greasemonkey com esta única linha de código ...
window.close();
mas o Firefox não permite que um script de usuário fechar uma janela (como relatado por uma mensagem de erro no console de erro)
Existe um trabalho em torno a este problema?
Solução
Você precisa alterar definições de configuração do Firefox (about: config) para permitir que este
.Passos:
- Vá para a barra de endereço e tipo about: config
- Vá para parâmetro dom.allow_scripts_to_close_windows
- Defina seu valor como true
Agora, o script pode fechar o TAB com 'window.close ()'
por exemplo.
function closeTab(){
window.open('', '_self', '');
window.close();
}
Outras dicas
Desde Firefox trata código Greasemonkey com os mesmos privilages como o código de script em sites externos, não é possível permitir que apenas código Greasemonkey para ser capaz de fechar as janelas, mas não roteiros regulares.
Por agora alguns dos -monkies permitir o uso de @grant opção de comandos oficialmente desbloqueio como window.close () , sem passar a about: config . Por exemplo, em Tampermonkey :
// @grant window.close
// @grant window.focus
(O último concessão permite que você re-focar o navegador em sua janela.) Isso eliminaria o erro.