Posso desativar o botão direito do mouse na minha página da Web sem usar JavaScript? Eu pergunto isso porque a maioria dos navegadores permite ao usuário desativar o JavaScript.
Caso contrário, como uso o JavaScript para desativar o botão direito?
javascript
Vinay Pandey
fonte
fonte
Respostas:
Você pode fazer isso com JavaScript adicionando um ouvinte de evento para o evento "contextmenu" e chamando o
preventDefault()
método:Dito isto: NÃO FAÇA.
Por quê? Porque ele alcança nada além de usuários irritantes. Muitos navegadores também têm uma opção de segurança para impedir a desativação do menu do botão direito do mouse (contexto).
Não sei por que você gostaria. Se é por alguma crença equivocada que você pode proteger seu código-fonte ou imagens dessa maneira, pense novamente: você não pode.
fonte
oncontextmenu="return false"
algo além do corpo pode fazer sentido, por exemplo, em uma tela.NÃO
Apenas não.
Não importa o que você faça, você não pode impedir que os usuários tenham acesso total a todos os dados do seu site. Qualquer Javascript que você codificar pode ser discutido simplesmente desativando o Javascript no navegador (ou usando um plugin como o NoScript). Além disso, não há como desativar a capacidade de qualquer usuário simplesmente "visualizar a fonte" ou "visualizar informações da página" (ou usar o wget) no seu site.
Não vale a pena o esforço. Na verdade, não vai funcionar. Isso tornará seu site hostil aos usuários. Eles vão perceber isso e parar de visitar. Não há benefício em fazer isso, apenas esforço desperdiçado e tráfego perdido.
Não.
Atualização: Parece que este pequeno tópico se mostrou bastante controverso ao longo do tempo. Mesmo assim, eu mantenho esta resposta a esta pergunta. Às vezes, a resposta correta é um conselho, em vez de uma resposta literal.
As pessoas que se deparam com essa questão na esperança de descobrir como criar menus de contexto personalizados devem procurar em outro lugar, como estas:
fonte
<body oncontextmenu="return false;">
A pergunta original era sobre como parar com o botão direito, pois o usuário pode desativar o JavaScript : que parece nefasto e maligno (daí as respostas negativas) - mas todas as duplicatas são redirecionadas aqui, mesmo que muitas das duplicatas estejam pedindo menos propósitos malignos.
Como usar o botão direito do mouse em jogos HTML5, por exemplo. Isso pode ser feito com o código embutido acima, ou um pouco melhor é algo como isto:
Mas se você estiver fazendo um jogo, então lembre-se que o botão de clique com o botão direito dispara o contextmenu evento - mas também dispara o regulares mousedown e mouseup eventos também. Portanto, você precisa verificar qual propriedade do evento está para ver se foi o botão esquerdo (que === 1), meio (que === 2) ou direito (que === 3) do mouse que está disparando o evento.
Aqui está um exemplo no jQuery - observe que pressionar o botão direito do mouse disparará três eventos: o evento mousedown, o evento contextmenu e o evento mouseup.
Portanto, se você estiver usando os botões esquerdo e direito do mouse em um jogo, precisará fazer alguma lógica condicional nos manipuladores do mouse.
fonte
dom.event.contextmenu.enabled
no Firefox, os eventosmousedown
emouseup
ainda serão acionados , mesmo quecontextmenu
não sejam?Se você não se preocupa em alertar o usuário com uma mensagem toda vez que ele tenta clicar com o botão direito, tente adicioná-lo à sua etiqueta corporal
Isso bloqueará todo o acesso ao menu de contexto (não apenas com o botão direito do mouse, mas também com o teclado).
No entanto, como mencionado nas outras respostas, realmente não faz sentido adicionar um desabilitador de clique direito. Qualquer pessoa com conhecimento básico do navegador pode visualizar a fonte e extrair as informações necessárias.
fonte
Se você é um fã de jquery, use este
fonte
this
dentro do evento ready? Por que você usa embind
vez deon
? Ugh ...Primeiro, você não pode conseguir isso sem usar um recurso do lado do cliente. É aqui que o javascript é executado.
Em segundo lugar, se você estiver tentando controlar o que um usuário final pode consumir em seu site, precisará repensar como exibe essas informações. Uma imagem tem um URL público que pode ser buscado via HTTP sem a necessidade de um navegador.
A autenticação pode controlar quem tem acesso a quais recursos.
A marca d'água incorporada nas imagens pode provar que a imagem era de uma pessoa / empresa específica.
No final do dia, o gerenciamento de recursos é realmente um gerenciamento de usuários / convidados.
A primeira regra da Internet, se você não quiser, não a torne pública!
A segunda regra da Internet, se você não quiser, não a coloque na Internet!
fonte
Se seu objetivo é impedir que as pessoas possam baixar suas imagens, como a maioria das pessoas disse, desativar o botão direito do mouse é praticamente ineficaz.
Supondo que você esteja tentando proteger imagens, os métodos alternativos são:
Usando um flash player, os usuários não podem baixá-los como tal, mas podem facilmente capturar a tela.
Se você quiser ser mais desagradável, torne a imagem o fundo de uma div, contendo uma imagem transparente, à la -
será suficiente para impedir o roubo casual de suas imagens (veja uma amostra abaixo), mas como em todas essas técnicas, é trivial derrotar com um entendimento básico de html.
fonte
Você não pode realizar o que está solicitando sem usar o Javascript. Qualquer outra tecnologia que você optar por usar só pode ajudar a compor a página da Web no lado do servidor a ser enviada ao navegador.
Simplesmente não existe uma boa solução e não existe um período de solução sem Javascript.
fonte
Se seu objetivo é impedir que os usuários salvem suas imagens, você também pode verificar se o destino clicado é uma imagem, apenas desative o clique direito nesse caso. Portanto, o clique direito pode ser usado para outros fins. Retirado do código acima:
Isso é apenas para tirar a maneira mais fácil de salvar suas imagens, mas ainda pode ser feito.
fonte
fonte
dom.event.contextmenu.enabled
Faça como abaixo (também funciona no firefox):
fonte
Coloque esse código na sua
<head>
tag da sua página.Isso desativará o clique direito em toda a página da web, mas somente quando o JavaScript estiver ativado.
fonte
Eu tinha usado esse código para desativar o botão direito em qualquer página da Web, está funcionando bem. Você pode usar este código
fonte
Obviamente, como em todos os outros comentários aqui, isso simplesmente não funciona.
Certa vez, construí um miniaplicativo java simples para um cliente que força a captura de uma imagem a ser feita através da captura de tela e você pode considerar uma técnica semelhante. Funcionou, dentro das limitações, mas ainda acho que foi uma perda de tempo.
fonte
fonte
Tente isto
fonte
Desabilitar o clique direito na sua página da web é simples. Existem apenas algumas linhas de código JavaScript que farão esse trabalho. Abaixo está o código JavaScript:
No código acima, eu selecionei a tag. Depois de adicionar apenas essas três linhas de código, o botão direito do mouse será desativado na sua página da web.
Fonte: Desative o botão direito, copie, corte na página da Web usando jQuery
fonte
fonte
Sei que estou atrasado, mas quero criar algumas suposições e explicações para a resposta que vou fornecer.
Posso desativar o botão direito do mouse
Sim, usando JavaScript, você pode desativar qualquer evento que ocorra e, principalmente, apenas com javaScript. Como tudo que você precisa é:
Um hardware funcional
Um site ou um local no qual você pode aprender sobre os códigos de chave. Porque você vai precisar deles.
Agora, digamos que você queira bloquear a tecla Enter, pressione aqui é o código:
Para o clique direito, use isto:
no lugar de
event.keyCode
. E você vai bloquear.Você está certo, os navegadores permitem que você use
JavaScript
e o javascript faz todo o trabalho para você. Você não precisa configurar nada, apenas o atributo de script na cabeça.Por que você não deve desativá-lo?
A principal e a resposta rápida para isso seria: os usuários não vão gostar . Todo mundo precisa de liberdade, ninguém, quero dizer, ninguém quer ser bloqueado ou desativado, alguns minutos atrás, eu estava em um site que me impediu de clicar com o botão direito e senti por quê? Você precisa proteger seu código fonte? Então aqui
ctrl+shift+J
eu abri oConsole
e agora posso ir paraHTML-code
aba. Vá em frente e me pare. Isso não adicionará nenhuma camada de segurança ao seu aplicativo.Existem muitos menus úteis no botão direito do mouse, como Copiar, Colar, Pesquisar no Google por 'texto' (no Chrome) e muito mais. Portanto, o usuário gostaria de obter facilidade de acesso, em vez de se lembrar de muitos atalhos de teclado. Qualquer um ainda pode copiar o contexto, salvar a imagem ou fazer o que quiser.
Os navegadores usam a navegação do mouse: alguns navegadores, como o Opera, usam a navegação do mouse; portanto, se você a desabilitar, o usuário com certeza odiará a interface do usuário e os scripts.
Então esse foi o básico, eu ia escrever um pouco mais sobre como salvar o código-fonte hehehe, mas deixe que seja a resposta para sua pergunta.
Referência aos códigos de chave:
Código da tecla e do botão do mouse:
http://www.w3schools.com/jsref/event_button.asp
https://developer.mozilla.org/en-US/docs/Web/API/event.button (também seria apreciado pelos usuários).
Por que não desativar o botão direito:
http://www.sitepoint.com/dont-disable-right-click/
fonte
Javascript:
fonte
Nota importante: Depende do navegador e do SO para permitir ou não essa prevenção!
Você deveria fazer isso? Não . Porque isso não impedirá o usuário, mas apenas o irritará.
Você pode usá-lo? Sim . Exemplos: em alguns aplicativos da web em que você deseja ter um menu pop-up personalizado, no jogo, onde os usuários podem ficar aborrecidos quando, por engano, clicam com o botão direito do mouse e em outros casos.
Chrome (v65) no Ubuntu 16.04 = Você pode desativar o botão direito do mouse.
Chrome (v65) no Mac OS 10.11 = NÃO PODE desativar o botão direito.
Chrome (v65) no Windows 7 = NÃO PODE desativar o botão direito.
Firefox (v41) no Mac OS 10.11 = Você pode desativar o botão direito do mouse.
Firefox (v43) no Windows 7 = Você pode desativar o botão direito do mouse.
fonte
Algumas coisas a considerar:
Os plug-ins de navegador como "ativar o botão direito" na loja do Chrome existem por uma razão e você não poderá contorná-los. Não há literalmente nada que você possa fazer para impedir que as pessoas baixem seu conteúdo, pois elas literalmente precisam baixá-lo para até mesmo vê-lo no navegador; As pessoas tentam, mas sempre está lá fora.
Em geral, se o conteúdo não deve ser público, não o coloque online.
Além disso, não conseguir clicar com o botão direito do mouse é um problema de acessibilidade e, em muitos casos, constitui discriminação ilegal contra cegos, deficientes ou idosos. Verifique as leis locais, mas nos EUA é ativamente contra a lei na forma da ADA Federal, pois os cegos ou idosos que podem ter problemas de visão são uma classe protegida legalmente.
Então, ao invés de fazer isso e desperdiçar muito tempo e esforço, nem se preocupe em tentar fazer isso. Isso poderia simplesmente levar sua empresa a ser processada ou fazer com que falhassem em uma auditoria de conformidade.
fonte
Experimente este código para desativar a opção de elemento de inspeção
fonte
Use esta função para desativar o clique direito. Você pode desativar o clique esquerdo e tocar também
checking 1 and 0
correspondendofonte