terça-feira, 7 de fevereiro de 2012

Desativar tecla F5 e CRTL+R utilizando JavaScript

Para não permitir atualização da página no navegador Internet Explorer, podemos adicionar o seguinte código JavaScript entre da tag <head></head>.


 
<head runat="server">
      <title></title>
      <script language=javascript>    
         document.onkeydown = function () { 
           switch (event.keyCode) {
             case 116 :  
                event.returnValue = false;
                event.keyCode = 0;           
                return false;             
              case 82 : 
                if (event.ctrlKey) {  
                   event.returnValue = false;
                  event.keyCode = 0;             
                  return false;
           }
         }
    
     </script>
</head>

Este exemplo desativa o refresh em páginas web quando o usuário utilizar F5 ou CTRL + F5.

Ele funciona adicionando uma função onkeydown à página.

O event.keyCode, obtem qual botão foi precionado 116 para a tecla F5 e 82 para R.

O if para R verifica se o botão de controle foi pressionado ao mesmo tempo como R, marcando assim event.crtKey.

Entretanto, não tem como controlar o botão de atualização para a barra de endereço do navegador.

4 comentários: