Ir para conteúdo
Fórum Script Brasil
  • 0

Bloquear tecla ALT


rocborges

Pergunta

Uso o código abaixo para bloquear as teclas F5, ctrl n e ctrl f do teclado na minha página.

Estou tentando implementar o bloqueio da tecla ALT mas ta difícil.

alguém tem alguma dica?

<script language="JavaScript"> 
var placar = 0;
var competicao = 106;
c = navigator.appVersion.toLowerCase();
if (c.indexOf("msie 5") != -1)
  document.write('<link href="styles-ie5.css" rel="stylesheet" type="text/css" />');

function showDown(evt) 
{
    evt = (evt) ? evt : ((event) ? event : null);
    
    if (evt) 
    {
        if (navigator.appName=="Netscape") 
        {
            if (evt.which == 116) 
            {
                // When F5 is pressed
                cancelKey(evt);
            }
            else if (evt.ctrlKey && (evt.which == 82)) 
            {
                // When ctrl is pressed with R or N
                cancelKey(evt);
            }
        }
        else
        {
            if (event.keyCode == 116) 
            {
                // When F5 is pressed
                cancelKey(evt);
            }
            else if (event.ctrlKey && (event.keyCode == 78 || event.keyCode == 82)) 
            {
                // When ctrl is pressed with R or N
                cancelKey(evt);
            }
         }
    }
}

function cancelKey(evt) 
{
    if (evt.preventDefault) 
    {
        evt.preventDefault();
        return false;
    }
    else 
    {
        evt.keyCode = 0;
        evt.returnValue = false;
    }
}

if (navigator.appName=="Netscape") 
document.addEventListener("keypress",showDown,true);


document.onkeydown  = showDown;

</script>

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
O código da tecla alt é 16 !

É só você implementar as condicionais para verificar isso !

fiz assim e num deu certo porque será??

else
        {
            if (event.keyCode == 116) 
            {
                // When F5 is pressed
                cancelKey(evt);
            }
            else if (event.ctrlKey && (event.keyCode == 78 || event.keyCode == 82)) 
            {
                // When ctrl is pressed with R or N
                cancelKey(evt);
            }
            else if (event.keyCode == 16) 
            {
                cancelKey(evt);
            }

         }

Link para o comentário
Compartilhar em outros sites

  • 0

Recomendo que você não faça isso para impedir que o usuário feche o navegador (se for apenas para pedir confirmação é aceitável em alguns casos)

Ao invés de utilizar a combinação de teclas você pode utilizar eventos existentes

window.onunload=function(){
if (!prompt("Deseja realmente fechar essa janela ?")){
return false
}
}
Mas se em algum caso você quiser descobrir os códigos das teclas você pode fazer uma função assim:
window.onkeydown=function(event){
alert("O código da tecla pressionada é: "+event.keyCode)
}

Ou então olhe esse site: http://pt.wikipedia.org/wiki/Ascii

Link para o comentário
Compartilhar em outros sites

  • 0

Não conseguiu com o onunload ?

Cara, de qualquer forma acho melhor não fazer isso...

Isso tiraria a liberdade do usuário de fechar a janela, um direito que ele deve ter

Se eu acessar um site e não puder fechar a janela pode ter certeza que não visitaria novamente...

Link para o comentário
Compartilhar em outros sites

  • 0

Entendi...

Infelizmente não sei como impedir que ele mude de janela (o que dá pra fazer é evitar que a guia seja fechada)

Além disso, o usuário pode abrir outra janela do navegador...

Vou ver se tenho alguma idéia aqui

Qualquer coisa eu posto aqui !

Edit:

Estava pensando aqui e talvez seja possível com o evento onblur

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...