post #1022
Bloquear funções de inspeção de códigos no site com JS
Publicado em: 19/08/2021 / Atualizado em: 19/08/2021
Neste artigo vou passar alguns códigos em javascript que ajudam a bloquear funções no site que são usadas para inspecionar o código.
Para este exemplo, criamos um arquivo em PHP chamado de conteudo-protegido.php no diretório raiz do nosso site, que neste exemplo se chama endereco-do-seu-site.com.br, para que quando o usuário tente exibir o código, seja direcionado para esta pagina, que você pode criar e personalizar com alguma mensagem e botão de “voltar a pagina”.
1° Bloqueando teclado + mouse
O código abaixo mostra como bloquear as funções de cópia e também o menu do botão direito do mouse.
<script>
function mensagem(text) {
alert('Conteúdo protegido pela nossa politica de privacidade.');
return false;
}
function bloquearCopia(Event) {
var Event = Event ? Event : window.event;
var tecla = (Event.keyCode) ? Event.keyCode : Event.which;
if (sessionStorage.getItem("ultimaTecla") === "17" && tecla === 85) {
Event.preventDefault();
window.location = "https://endereco-do-seu-site.com.br/conteudo-protegido.php";
}
sessionStorage.setItem("ultimaTecla", tecla);
}
$(document).keypress(bloquearCopia);
$(document).keydown(bloquearCopia);
$(document).contextmenu(mensagem);
</script>
2° Bloquear seleção de texto
Com apenas um pequeno trecho de CSS podemos bloquear a seleção dos textos do site nos principais navegadores.
<style media="screen">
* {
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
user-select: none;
}
</style>
3° Bloqueando a abertura da DevTools (painel de inspeção de código do navegador)
Esta biblioteca de código ajuda na identificação da Devtools do navegador. O código abaixo identifica se ela foi aberta, ou se já entrou no site aberto, e direciona para a pagina de aviso.
Créditos pela biblioteca do código: https://github.com/sindresorhus/devtools-detect
<script src="https://cdn.jsdelivr.net/gh/brunoalbim/devtools-detect/index.js"></script>
<script>
if (window.devtools.isOpen === true) {
window.location = "https://endereco-do-seu-site.com.br/conteudo-protegido.php";
}
window.addEventListener('devtoolschange', event => {
if (event.detail.isOpen === true) {
window.location = "https://endereco-do-seu-site.com.br/conteudo-protegido.php";
}
});
</script>
Os exemplos acima, ajudam a inibir muitas cópias de conteúdo indevido, principalmente para usuários inexperientes na web, porem, não é uma solução 100%, nenhuma solução da internet vai bloquear 100% a copia de conteúdo ou código dos sites, então use com sabedoria.
Publicações recomendadas:
Link Curto para Compartilhamento
Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.
bruno.art.br/pb/1022
ID de Referência: 1022
Sugira uma publicação
Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.