Como desativar menu de contexto padrão para certos elementos em mozilla usando o protótipo?

StackOverflow https://stackoverflow.com/questions/277924

Pergunta

Eu estou tentando ampliar as opções de navegação do menu de contexto sobre certos elementos (especificamente, h1 e h2 etiquetas) Eu quero evitar a ação padrão do navegador quando clicar com o botão direito sobre esses elementos.

Eu encontrei informações agradável em desta página .

No entanto, eu não poderia encontrar como desativar o menu de contexto para certos elementos. Alguém sabe como fazê-lo?

Estou usando o protótipo como meu API JavaScript.

Foi útil?

Solução

Isso impedirá que o menu de contexto de aparecer em um determinado elemento

$(it).observe("contextmenu", function(e){
    e.stop();
});

Assim, por exemplo parada todas as tags H1 / H2 de mostrar um menu de contexto

$$('h1, h2').each(function(it){
    $(it).observe("contextmenu", function(e){
        e.stop();
    });
})

Outras dicas

Você pode ofuscar um pouco, mas finalmente sua página é de apenas um convidado no navegador em, (e você pode levar isso para dizer da mesma maneira que um prisioneiro é um "convidado" do Estado, se desejar ). Portanto, a página deve confiar no navegador para jogar bonito. Se o usuário deseja executar um navegador que não jogar bonito, ou personalizar o seu navegador existente para fazê-lo, que é sempre a sua opção. Você pode não força um navegador para fazer qualquer coisa. Nada você pode fazer vai ser capaz de parar o usuário de realizar uma determinada atividade com o seu navegador, se eles realmente querem, uma vez que visualizar uma página em sua máquina local. Mais do que isso, a maioria dos navegadores recentes têm instalações já construídas em torná-lo muito fácil para o usuário para substituir o comportamento normal quando algo parece fora do comum.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top