garotosopa

Desabilitar o uso de alert no Firefox

Publicado em Javascript por garotosopa em Dezembro 1, 2008

Alguns sites insistem em atrapalhar a navegação utilizando alert() inadvertidamente, e isso sempre me irritou bastante. Resolvi procurar e acabei descobrindo uma forma no Firefox de desabilitar funcionalidades Javascript de acordo com políticas para cada site.

Como o Firefox ainda não tem uma interface para configurar estas regras, é necessário editar o arquivo user.js manualmente. Se o arquivo ainda não existir, basta criá-lo no seu diretório pessoal do Firefox.

Aqui o caminho é ~/.mozilla/firefox/5mmyfmm7.default, mas provavelmente esta última parte será diferente.

user_pref("capability.policy.policynames", "semAlert");
user_pref("capability.policy.semAlert.sites", "http://oglobo.globo.com");
user_pref("capability.policy.semAlert.Window.alert", "noAccess");

Depois é só reiniciar o Firefox.

Quando o site tentar utilizar o recurso desabilitado o console do Javascript irá mostrar Error: Permission denied to call method Window.alert.

Para aplicar a mesma política para mais de um site, separe os endereços por espaço. Se precisar criar diferentes políticas, separe cada uma por vírgula na configuração policynames.

O legal é que dá pra desabilitar todas as funções ou propriedades do DOM. Quem quiser pode dar uma olhada nos links Configurable Security Policies e Customizing Mozilla para mais detalhes.

E então, vai usar? Já faz isso de outra forma?

Uma resposta

Subscreva aos comentários comRSS.

  1. Diego Fleury said, on Dezembro 1, 2008 at 9:03 am

    Gostei da dica, não sabia que isso era possível… Vou usar em sites de download como zshare, bandongo e outros que ficam abrindo popups insistentemente. Mesmo usando Adblock, eles conseguem atrapalhar a vida do visitante…


Deixe uma resposta