As tags de script são ocultadas por padrão usando display:none;
. O Unor 1 explica a especificação do idioma subjacente. No entanto, eles ainda fazem parte do DOM e podem ser estilizados de acordo.
Dito isto, é importante ter em mente exatamente o que uma tag de script está fazendo. Embora fosse acompanhado por tipos e idiomas, isso não é mais necessário. Agora, pressupõe-se que o JavaScript esteja lá e, como resultado, os navegadores interpretarão e executarão o script à medida que for encontrado (ou carregado) a partir dessas tags.
Depois que o script é executado, o conteúdo da tag é apenas texto (geralmente oculto) na página. Este texto pode ser revelado, mas também pode ser removido porque é apenas texto.
Na parte inferior da página, logo antes da </html>
tag de fechamento , você pode removê-las facilmente com o texto e não haverá alterações na página.
Por exemplo:
(function(){
var scripts = document.querySelectorAll("script");
for(var i = 0; i < scripts.length; i++){
scripts[i].parentNode.removeChild(scripts[i]);
}
})()
Isso não removerá nenhuma funcionalidade, pois o estado da página já foi alterado e é refletido no atual contexto global de execução. Por exemplo, se a página carregou uma biblioteca como o jQuery, a remoção das tags não significa que o jQuery não está mais exposto porque já foi adicionado ao ambiente de tempo de execução da página. Essencialmente, é apenas fazer com que a ferramenta de inspeção DOM não mostre elementos de script, mas destaca que os elementos de script, uma vez executados, realmente são apenas texto.
1. unor, qui 07/07/2016, wutzebaer, "Quando as tags devem estar visíveis e por que podem?", 1 de julho às 10:53, https://stackoverflow.com/a/38147398/1026459
<style>
com conteúdo editável. Ótima maneira de ver os efeitos em tempo real.