Impedir que o Chrome abra links âncora na mesma guia, quando clicado com o botão do meio do mouse


1

Percebi uma alteração recente na maneira como o Chrome para Windows lida com o clique nos links com o botão do meio (roda) do mouse, quando o destino (URL) do link aponta para o mesmo site.

Por muitos meses (anos?), Clicando em qualquer link com o botão do meio do mouse, sempre abre t em uma nova guia. Ele atuou como selecionando Abrir link em uma nova guia no menu de contexto. Esse comportamento foi permanente e aconteceu sempre, independentemente do link do URL de destino.

Recentemente, notei uma mudança. Quando o endereço do link aponta para o mesmo site (link ancorado), o Chrome sempre o abre na mesma guia, mesmo se o usuário clicar nesse link com o botão do meio do mouse (forçar nova guia).

Alguém sabe, se a alteração acima descrita é permanente e se há alguma maneira de precedê-la (para voltar ao comportamento "antigo", onde todos os links clicados no meio estavam abertos em uma nova guia)?

EDIT : Caso resolvido (com a instalação de uma extensão proposta em uma resposta). Para referência futura e para pessoas que procuram um exemplo vivo - aqui está um dos muitos (Yii Framework Class Reference):

1. Visite a CDbColumndefinição da classe.

2. Clique com o botão do meio no queryScalarlink no final do terceiro parágrafo (fique à vontade para testar outro).

3. Alterne para a guia aberta e clique com o botão direito do mouse no querylink no único parágrafo abaixo da tabela de propriedades.

Todos os links são internos / ancorados, todos apontando para a mesma CDbColumnpágina (própria) . Sem a extensão "fixando" instalada, o primeiro queryScalarlink ( ) é aberto em uma nova guia, enquanto o segundo ( query) na mesma guia.

Para piorar as coisas, analisei o código fonte de cada um dos links mencionados, para ver se o problema apresentado não é causado por algum erro / alteração no código HTML. O código para os dois links é o mesmo :

<a href="/doc/api/1.1/CDbCommand#queryScalar">queryScalar</a>

<a href="/doc/api/1.1/CDbCommand#query">query</a>

Portanto, isso é claramente um bug no Chrome.


1
Qual versão do Chrome você está usando? Você pode dar um exemplo específico de links que não funcionam? Você já tentou com extensões desativadas ( --disable-extensions)? Tudo funciona bem para mim no Chrome 33 em todos os links que testei no SuperUser.
heavyd

@ Heavyd: estou usando a versão mais recente do Chrome ( 33.0.1750.154). Você pode usar outro, se o Chrome nunca perguntar se você deseja atualizar, apenas se atualiza? Não, eu não uso --disable-extensions, porque ... Não tenho extensões instaladas! :] BTW: Onde, no Superusuário, você vê links "ancorados", que apontam para a mesma página? Devo estar faltando alguma coisa, mas não vi muitas delas aqui.
Trejder

Respostas:


1

De acordo com este tópico e o rastreador de erros ao qual está vinculado, parece haver um problema com a maneira como o Chrome / Webkit lida com os eventos de clique na Web acionados pelo clique do meio.

E, acredite ou não, na verdade existe uma extensão que supostamente corrige esse bug (mesmo que o Google ainda não consiga corrigi-lo em cinco anos após a divulgação). Eu testei apenas brevemente, mas parece funcionar.


Se esse problema foi realmente relatado há cinco anos e não foi resolvido desde então, não me surpreende que as pessoas estejam cansadas da ignorância da equipe de desenvolvimento e se ajudem de outras maneiras. Obrigado por uma ótima resposta e um ponto para uma extensão que parece funcionar perfeitamente!
Trejder

0

Isso pode ou não ser um bug no Chrome, mas o site está definitivamente fazendo algo fora do padrão.

Como o relatório de bug vinculado na resposta da Cybertox, esse comportamento é indefinido / inconsistente do evento "click" do Javascript quando o botão do meio do mouse é usado para clicar em um destino.

O site que você mencionou na sua pergunta está usando algum Javascript para alterar o destino da âncora. Observe que quando você passa o mouse ou olha para a origem do link "query", o destino é o alvo #query, no entanto, se você clicar no link e olhar na barra de endereço, o hash será #query-detail.

Você notará que clicar com o botão do meio nos links âncora em um site que faz isso corretamente (como a documentação do VirtualBox ) funciona muito bem. Você pode notificar o proprietário do site sobre o bug em seu código.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.