O Twitter impede o bloqueio de script

0

Eu me deparei com um problema estranho. Quando eu tiver UBlock Origin em Pale Moon ativada para bloquear todos os scripts (incluindo scripts embutidos), a página da Web Twitter de alguma forma mostra os seguintes problemas comportamento:

  1. Ele não mostra o menu de contexto ao clicar com o botão direito do mouse (mas o clique duplo com o botão direito o traz para cima).

  2. Muitas teclas padrão não funcionam, incluindo Up / Down / PgUp / PgDn e F5 e Backspace e Alt + Esquerda / Direita / Home. Ctrl + W não fecha a guia, e Ctrl + T não abre uma nova guia (mas Ctrl + Tab funciona).

Eu confirmei que isso tem a ver com o bloqueio de scripts do Twitter, porque eu tenho dois outros addons (um sendo AdBlock Lite ) que bloqueia o download de scripts por meio de um NsIContentPolicy, sendo que ambos afirmam bloquear com êxito:

Mas não bloqueie:

Eu suspeito que o UBlock Origin também não bloqueie alguns scripts, que seqüestram o mouse e certos atalhos de teclado. Quando todos os três addons estão desativados para o Twitter, o comportamento desagradável acima desaparece.

Até tenho um script Greasemonkey definido como @run-at document-start e stopImmediatePropagation on qualquer evento keydown, mas não impede o seqüestro do teclado.

Minhas perguntas

  1. Vejo que o primeiro arquivo JS que aparentemente está bloqueado está vinculado de uma tag <script> e não apenas de uma tag <link> . Então eu estou supondo que o NsIContentPolicy falhar por <link> tags (especialmente com o atributo rel='preload' ?). Eu ficaria grato se alguém puder explicar o que está acontecendo.

  2. Existe uma maneira de ter uma garantia de 100% de bloquear a execução de todos os scripts, a menos que eu os liste em branco caso a caso?

A versão móvel do Twitter funciona bem e não rouba o mouse nem o teclado.

    
por user21820 06.09.2016 / 08:17

1 resposta

1

Finalmente eu tive algum tempo para voltar a isso. Eu usei um script GreaseMonkey para injetar um ouvinte de eventos para beforescriptexecute para impedir que todos os scripts sejam carregados e descobri que o UBlock Origin (1.9.6) não estava conseguindo bloquear a execução dos scripts embutidos na página do Twitter. Então, basicamente, respondi minha própria pergunta:

  1. O problema foi com o UBlock Origin e não com as tags <link rel="preload" ...> .

  2. Usando este script GM, posso bloquear facilmente todos os scripts e, especificamente, listar em branco os que desejar.

por 20.09.2016 / 11:14