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

Teclas - Desativamento Sem Alerta!


.'. Metraton .'.

Pergunta

Vai aqui um exemplo completo de anulação de qualquer tecla do teclado sem

o nosso querido alerta! ;)

Neste caso bloqueia o Crtl + N para abrir uma nova janela. Simples, porém bastante funcional!

<html>

<head>

<body onKeyDown="java script:return trava();">

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<title>Nova pagina 1</title>

</head>

<body>

<script language="JavaScript">

function trava()

{

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}

}

//-->

</script>

</body>

</html>

Na cor azul, selecione o número da tecla que deseja anular!

Abraços à todos,

Link para o comentário
Compartilhar em outros sites

  • Respostas 70
  • Created
  • Última resposta

Top Posters For This Question

Posts Recomendados

  • 0

é só você colocar outro IF com as especificações pra tecla SHIFT... ou a tecla q você quiser.........

outra coisa, se esse código q você postou é pra tecla CTRL+N, ele está errado pois ele define apenas uma tecla.... e CRTL+N são duas teclas...

então você tem q fazer assim.......

tecla='n' || tecla='CTRL' com os respectivos códigos ASCII... sacou???

falou

Link para o comentário
Compartilhar em outros sites

  • 0

Falou cara! Nesse caso eu apenas bloqueei a tc 'N', que funcionou, mas eu gostaria de bloquear o 'Shift' tb!

Porque eu coloquei um outro IF especificando outra tecla, mas não

funcionou, pra dizer a verdade o script nem funcionou, não bloqueou

nenhumas das teclas, mas tb não deu erro!

Será que você poderia postar um exemplo?

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

repare que no código que você colocou tem 2 vezes a tag <BODY>......................

seguinte.... o código é esse aqui.......... no lugar do 78 coloca o valor da tecla q você quer travar.... se quiser travar mais teclas copia a linha inteira do IF e muda o código da tecla...

para associar duas teclas faz assim..................

(tecla=XX || tecla=XX) sacou???????

<script language="JavaScript">

function trava()

{

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}

}

//-->

</script>

<body onKeyDown="java script:return trava();">

Link para o comentário
Compartilhar em outros sites

  • 0

quem sou eu pra questionar jissa???hehehehe

tá ai o cód...

<script language="JavaScript">

function trava()

{

var shift=window.event.shiftKey;

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}//trava a tecla 78

if (shift) {event.keyCode=0; event.returnValue=false;}//trava a tecla SHIFT

}

//-->

</script>

<body onKeyDown="java script:return trava();">

Link para o comentário
Compartilhar em outros sites

  • 0

É, mas não funcionou como eu havia pensado! Ele desabilita escrever em maiúsculo, mas não desabilitou esta outra função (shift+clique=nova janela).

Talvez se eu colocar o alerta somente nesta tecla, . . . acho que vai dar certo!

. . . . . . . . . . . . . . . . . não deu, a tecla tem aquele bug, aparece o

alerta mas se a pessoa pressiona outra tecla o comando fica à disposição!

Link para o comentário
Compartilhar em outros sites

  • 0

Entendi já o que está acontecendo... o código não dá aviso de bloqueio de teclado se você for testar os códigos numa caixa de texto ela não vai funcionar posi o da caixa de texto é separada do código da página se você quiser bloquear uma caixa de texto você terá de bloquear A CAIXA DE TEXTO e não a página. Caso você tenha testado o código na ´página obviamente você não vai perceber nada pois ela não avisa do bloqueio... simplesmente bloqueia o teclado! Eu prefiro um código na qual ele mostre a caixa de dialogo... pois tanto avisa de copia ilegal que você irá mostrar que o site está protegido pelos direito autorais... tenta aí na caixa de diálogo e volta aqui para falar!!!! Qualquer coisa eu passo o código completo com a Caixa de diálogo para vocês.. falow!!! ;)

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu Jissa! Mas não é o caso, pra falar a verdade eu já uso este comando.

Você já tentou clicar num link com o shift pressionado?

Ela vai abrir o link numa nova janela, funciona como um Ctrl+N, mas abrindo

o link numa nova janela!

Como o site é em full, o cara com este comando, ele pode abrir os links do site

numa nova janela.

Abraços,

Link para o comentário
Compartilhar em outros sites

  • 0

Olha só... tenta ai isto.. kara isto deu um trabalhinho aqui pros neuronios.. este deveria até ser cobrado.. :)

Coloca do <script... até o </script> dentro do <Head> da pagina que quer bloquear

<html>
<head>
<title>Teste de Click sem o Shift</title>
<script language="JavaScript">
<!--
function mouseDown(e) {
 var shiftPressed=0;
 if (parseInt(navigator.appVersion)>3) {
  if (navigator.appName=="Netscape")
       shiftPressed=(e.modifiers-0>3);
  else shiftPressed=event.shiftKey;
  if (shiftPressed) {
   alert ('Shift-click esta desabilitado.')
   return false;
  }
 }
 return true;
}
if (parseInt(navigator.appVersion)>3) {
 document.onmousedown = mouseDown;
 if (navigator.appName=="Netscape") 
  document.captureEvents(Event.MOUSEDOWN);
}
//-->
</script>


</head>
<body>
<p><a href="paginalink.htm">Teste de Click sem o Shift</a></p>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Jissa... você é o IDOLO da galera...!!!!!!....hehehehe

foda é q o pessu de fora num sabe reconhecer um talento!!!

Link para o comentário
Compartilhar em outros sites

  • 0

Æ Jissa, só não entendi porque tenho q definir o browser, ele funciona tb no IE, porque colocar o Netscape????

E no embalo, quero saber como faço para fechar uma janela mãe. Vou explicar:

meu site é em flash e abre em fullscreen, mas para abrir preciso carregar uma index.htm, onde ela abre um pop up em fullscreen com o site. Quero saber como faço para fechar a index.htm, sem dar o aviso de confirmação para fechar a janela???

valeu....

Link para o comentário
Compartilhar em outros sites

  • 0

Note que tem duas atribuicoes para o shiftPessed.. uma é para o NetScape e outra para o IE

shiftPressed=(e.modifiers-0>3);

shiftPressed=event.shiftKey;

Para fechar a janela.. faz assim.. java script:Janela2(); self.close()

Na Funcao Janela2(); voce abre a outra pagina.. e em seguiga fecha a atual.. da uma testada qualquer coisa Posta ai.

Link para o comentário
Compartilhar em outros sites

  • 0
Desculpa ae me intrometer.. mas o shift tem um controle separado como o Control..

olha ai:

var shift=window.event.shiftKey;

Só uma dúvida! <_<

Pra desativar o Ctrl seria este comando: var shift=window.event.ctrlKey.

Ficaria assim?

<script language="JavaScript">

function trava()

{

var ctrl=window.event.ctrltKey;

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}//trava a tecla 78

if (ctrl) {event.keyCode=0; event.returnValue=false;}//trava a tecla CTRL

}

//-->

</script>

<body onKeyDown="java script:return trava();">

Abraços,

Link para o comentário
Compartilhar em outros sites

  • 0
Desculpa ae me intrometer.. mas o shift tem um controle separado como o Control..

olha ai:

var shift=window.event.shiftKey;

Só uma dúvida! <_<

Pra desativar o Ctrl seria este comando: var shift=window.event.ctrlKey.

Ficaria assim?

<script language="JavaScript">

function trava()

{

var ctrl=window.event.ctrltKey;

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}//trava a tecla 78

if (ctrl) {event.keyCode=0; event.returnValue=false;}//trava a tecla CTRL

}

//-->

</script>

<body onKeyDown="java script:return trava();">

Abraços,

tipo....... o que eu coloquei em vermelho ali tah errado... num é shift e sim ctrl... mas de resto ta certinho....

Link para o comentário
Compartilhar em outros sites

  • 0

<script language="JavaScript">

function trava()

{

var ctrl=window.event.ctrltKey;

var tecla=window.event.keyCode;

if (tecla==78) {event.keyCode=0; event.returnValue=false;}//trava a tecla 78

if (ctrl) {event.keyCode=0; event.returnValue=false;}//trava a tecla CTRL

}

//-->

</script>

<body onKeyDown="java script:return trava();">

Esse código tá certo Diraol?

Porque ele não tá travando o Ctrl!

Abraços,

Link para o comentário
Compartilhar em outros sites

  • 0
<script language="JavaScript">

var ctrl=window.event.ctrltKey;

var tecla=window.event.keyCode;

function trava()

{

if (tecla==78) {event.keyCode=0; event.returnValue=false;}//trava a tecla 78

if (ctrl) {event.keyCode=0; event.returnValue=false;}//trava a tecla CTRL

}

//-->

</script>

<body onKeyDown="java script:return trava();">

tenta declarar a variável fora da função... num sei se faz diferença.....hehehe

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
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...