Pop-ups de JavaScript do Chrome lidando com mudanças

Experimente Nosso Instrumento Para Eliminar Problemas

Google implementado uma mudança no comportamento de manipulação de pop-ups de JavaScript do Chrome recentemente que restringe os pop-ups de JavaScript.

A mudança, que já estava no Chrome Canary e Dev, melhora o tratamento dos diálogos JavaScript alert (), confirm () e prompt () que as páginas podem lançar no navegador.

O Chrome até agora, e isso ainda é verdade para o Chrome Stable e Beta, lidava com essas caixas de diálogo JavaScript por janela do navegador.

Isso significa que os pop-ups podem bloquear o navegador até que os usuários reajam ao pop-up em questão. Embora isso possa ser útil em certas situações, geralmente significa que os sites usam essas opções para bloquear o navegador e forçar os usuários a interagir com o pop-up.

Isso variava de sites de pegadinhas que colocam você em um loop infinito de pop-ups a sites de ataque que pediam aos usuários que pagassem para remover o pop-up e retornar o navegador ao estado padrão.

Pop-ups de JavaScript do Chrome lidando com mudanças

google alert

O Google decidiu fazer essas caixas de diálogo JavaScript funcionarem por guia no navegador, e não mais por janela. O que isso significa para os usuários é que agora é possível descartar qualquer pop-up lançado por essas funções JavaScript simplesmente alternando as guias.

Fazer isso descarta o pop-up imediatamente. Os usuários não precisam mais interagir diretamente com o pop-up ou mesmo forçar o encerramento do processo do Chrome para recuperar o controle do navegador da web.

A empresa notas no documento oficial de design:

Se uma guia for a guia principal, então apresentaríamos a caixa de diálogo para a guia. os diálogos de alerta / confirmação / prompt seriam exibidos e focados nas interações do usuário. Se o usuário interagir com eles e realizar a interação de usuário para a qual foram projetados, nada de notável acontecerá.

No entanto, se o usuário alternar para uma guia diferente, movendo a guia para o fundo e tornando-a não mais importante, dispensaríamos a caixa de diálogo. Para caixas de diálogo de alerta, o JavaScript não está esperando por uma resposta, então retornaríamos ao JavaScript. Para caixas de diálogo de confirmação e prompt, retornaríamos falso e nulo respectivamente, indicando um cancelamento. (Observe que esses são os mesmos valores que retornamos atualmente para as caixas de diálogo que são suprimidas pela configuração “Impedir que esta página crie caixas de diálogo adicionais”.)

Para todas as outras guias, neutralizaríamos a maioria dos diálogos. Para diálogos de alerta, nós o adicionaríamos a uma fila para aquela guia e mostraríamos a fila de diálogos na próxima vez que a guia estivesse em primeiro plano, mas permitiríamos imediatamente que o JavaScript dessa guia fosse retomado. Para os diálogos de confirmação e prompt, retornaríamos imediatamente falso / nulo para evitar o bloqueio do JavaScript, pois o bloqueio da execução do script quebraria guias arbitrárias, muito possivelmente aquela com a qual o usuário está interagindo.

A mudança deve acabar com os webmasters que usam essas funções JavaScript para irritar ou atacar os usuários do navegador Chrome.

O Google observa que a mudança afetará todos os sites que usam essas caixas de diálogo JavaScript. A empresa sugere que os sites implementem alternativas, por exemplo, usando a API de notificações.

Isso significa que o Google mudará o uso de alert () do Google Agenda para notificações? Só o tempo irá dizer.

Se você olhar para outros navegadores, notará que eles implementaram a funcionalidade anos atrás. Tanto o Firefox quanto o Opera têm essa opção implementada há anos.

Agora lê : Extensão Popup Blocker para Google Chrome