Desenvolvimento, Web

IE6 bugado

0 28

Estive fazendo algumas implementações em Java Script. Nada fora do comum. Coisas do dia-a-dia. Sempre testo os projetos no Firefox, IE6, IE7 e Opera, garantir a qualidade, vocês sabem.

Quebrei a cabeça num bugzinho, porém terrível. Parece até um vírus, uma praga mesmo!

A grosso modo, meu objetivo era alterar um src de uma imagem dinamicamente (para aqueles que já mexem a anos, já devem estar desconfiando) através de JS. Firefox ok, IE7 ok, Opera ok, IE6 ok…mas então, onde está o problema?

Joguei o projeto na web e fui testar novamente, incrível, no IE6 parou de funcionar (a imagem nova não aparecia, somente clicando com botão direito e selecionar “Mostrar imagem”. Ou seja, quando localhost, funcionou normal, mas quando web não! Tentei então fazer um pre-loader em JS assim que carregasse o projeto (web), fui testar, ainda correto para todos, menos para o IE6.

Então fui tentar passar um alert() e ter certeza do que estava acontecendo. E para minha surpresa, a imagem nova apareceu APÓS o alert(). Bug?? “imagina, engano meu…”: CLARO que sim!

Claro que eu não ia fazer um alert() só para a imagem funcionar no IE6, nada prático…então fui pesquisar.

Então, o bug não estava na tag img e nem no JS, a praga estava no link (imagem) que ativava (através do onclick) uma função JS. Veja como estava:

<a href="javascript:;" onclick="selecionaIcone('icone3.png');"><img border="0" src="img/icones/icone3.png" /></a>

Caso resolvido assim:

<a onclick="selecionaIcone('icone3.png');"><img border="0" src="img/icones/icone3.png" /></a>

Explicando: retirei o href=”javascript:;” e no CSS adicionei a seguinte linha: cursor:pointer; para ficar com a “mãozinha” no mousehover.

Existem várias maneiras de se fazer carregar uma função JS, mas meu objetivo aqui é mostrar o belíssimo BUG do IE6. Ainda bem que foi resolvido no 7.

Abraços a todos,
Daniel Accorsi.

Sobre o autor / 

Daniel Accorsi

Analista Web/Sistemas formado em 2004 pela Universidade UniFil em Londrina/PR, MBA em Marketing Digital e Gestão de Projetos Web, blogueiro, desenvolvedor Kinect e fotografia como hobby. Me encontre no Twitter - @DanielAccorsi

Comentários

Arquivo

Receba por e-mail

Você receberá pro e-mail as novas publicações do Alvo Conhecimento. Poderá cancelar a qualquer momento.