
Dica cruel que eu encontrei no blog Modern Life. Com 61 bytes de código é possível travar o Internet Explorer (IE). Esses 61 bytes se resumem a uma linha de código:
<script>for (x in document.write) { document.write(x);}</script>
De acordo com a postagem original, o autor da descoberta estava trabalhando com o IE e programando em Javascript, quando percebeu que a bomba o browser não estava interpretando corretamente o seu código. Então ele concluiu que o problema ocorria apenas no IE. Na tentativa de detectar a causa, acabou chegando à linha de código que parava completamente o navegador.
Pelo que pude entender nas minhas pesquisas sobre a linguagem (não sou conhecedor de Javascript), temos uma estrutura de repetição (for), que itera sobre x, onde esta variável percorre um conjunto gerado por document.write(), que, por sua vez, é a chamada para o método write(), do objeto document, que é o arquivo HTML que aparece na janela do navegador. Então, dentro do laço, o código tenta escrever o valor da variável x. Não sei se faz sentido, uma vez que, ao meu ver, document.write() não teria valor algum sobre o qual iterar. Então, à primeira vista, seria como fazer o seguinte código em Python: for x in print; print x...
De qualquer forma, o fato é que o código trava apenas o IE (testei na versão 6.0), não tendo qualquer efeito sobre o Firefox (3.0.4) e Safari (3.2 - 5525.26.12). Para quem quiser testar, estou disponibilizando este link. Só esteja certo de ter todos os seus trabalhos salvos ao acessá-lo!
Para terminar, deixo alguns convites:
Pelo que pude entender nas minhas pesquisas sobre a linguagem (não sou conhecedor de Javascript), temos uma estrutura de repetição (for), que itera sobre x, onde esta variável percorre um conjunto gerado por document.write(), que, por sua vez, é a chamada para o método write(), do objeto document, que é o arquivo HTML que aparece na janela do navegador. Então, dentro do laço, o código tenta escrever o valor da variável x. Não sei se faz sentido, uma vez que, ao meu ver, document.write() não teria valor algum sobre o qual iterar. Então, à primeira vista, seria como fazer o seguinte código em Python: for x in print; print x...
De qualquer forma, o fato é que o código trava apenas o IE (testei na versão 6.0), não tendo qualquer efeito sobre o Firefox (3.0.4) e Safari (3.2 - 5525.26.12). Para quem quiser testar, estou disponibilizando este link. Só esteja certo de ter todos os seus trabalhos salvos ao acessá-lo!
Para terminar, deixo alguns convites:
- Quem entender de Javascript, poderia comentar, explicando o funcionamento exato do script.
- Quem usa o IE, poderia testar e avisar se o código travou o seu programa, indicando a versão do software e do Windows, que estava usando.
- Quem usa o IE, poderia experimentar o Firefox, que é um navegador multiplataforma, livre, gratuito e quem vem colecionando prêmios ao longo dos anos.
Fonte: Modern Life
Leia Também
Leia Também
- Listagem de Códigos no Blogger com SyntaxHighlighter – Um ótimo método para apresentar códigos-fonte em suas postagens.
- Neve no Blogger! – Inverno no seu blog!
- Internet Explorer e Imagens PNG com Transparência – Como contornar este bug do navegador da Microsoft.
- Criando um Blog no Blogger – Procedimentos para criação de uma boa estrutura para um blog do Blogger.
- Listagem de Códigos no Blogger com Pygments – Aprenda a inserir códigos fontes no seu blog do Blogger, com o Pygments!
Kra,
ResponderExcluirFiz e funcionou certim, ou melhor, não funcionou. Eta, RUWINDOS de nada....
[]s
Pior que tem gente que ainda teima em usar o IE...
ResponderExcluirTestei aqui, funciona no IE7, mas realmente trava o IE6.
ResponderExcluirE o cara ainda foi gente boa e publicou a falha hein...
Uma vez vi no MSN de um amigo, agora não me recordo qual, a seguinte frase: "IE só serve para baixar o FF."
Abraço!
Além do IE ser ruim (na minha opinião), muitas pessoas ainda utilizam versões antigas do mesmo, o que é uma falha grave de segurança.
ResponderExcluirO Firefox por sua vez possui embutido um sistema de atualização automática, o que garante que o usuário será pelo menos avisado de novas versões.
Pior que tem gente que teima em usar o IE. Tenho um tio assim. A justificativa dele é que as páginas carregam mais rápido no IE. Eu tive que rir quando ele disse isso, claro! ;-)