Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

xpto

Mudanças na forma como o IE mostra o flash

Recommended Posts

A Microsoft mudou a maneira como os controles ActiveX funcionam no Internet Explorer. Esta mudança afeta todos os controles ActiveX interativos numa página web. Em particular, irá afetar todos os filmes flash (SWF) colocados numa página. Esta mudança é feita em resposta á acusação da EOLAS que reclama para si a patente no que respeita a este tipo de aplicações correrem numa página web.

 

Isto afetará o Macromedia Flash todos os produtos da SWiSHzone que exportam arquivos HTML+SWF: SWiSH Lite, SWiSH2, SWiSH Max, SWiSH Video, SWiSH Presenter, SWiSH Pix, como também todos os SWiSH Sites. Como o Flash todos os outras aplicações que usam as seguintes tags: <aplet> <embed> <obgect> ou seja: Flash Player, Windows Media Player, Quicktime, Real Player, JavaAplet etc...

 

Em 11 de Abril, a nova versão de Internet Explorer começou a ser distribuída.

Os novos computadores que trazem o Windows já incluirão a alteração do ActiveX. As versões já instaladas, terão esta mudança assim que fizerem a actualização do IE (Windows Update).

 

Esta atualização está disponível aqui: http://support.microsoft.com/kb/912945

 

O que é que acontece?

 

Quando o visitante acessa a página web, e esta contém o objeto swf, aparecerá uma linha cinzenta em volta dele. O visitante, tem de clicar no objeto, para ter acesso a ele.

Ou seja, sem clicar uma vez, não terá acesso aos links por exemplo.

 

SOLUÇÃO:

 

A Microsoft e a Macromedia estão estudando algumas soluções para que os efeitos deste "problema" seja minimizado. Contudo, uma forma que parece ser a mais simples é a seguinte:

Esta solução, consiste em adicionar a página web (HTML ou HTM) o seguinte códido antes do final do </header>

 

Código:

<!--[if gte IE 6]>

<script src="dynActiveX.js"></script>

<![endif]-->

Depois, é preciso criar o arquivo dynActiveX.js (JavaScript) contendo o seguinte código:

 

// When the page loads:

window.onload = function(){

if (document.getElementsByTagName) {

// Get all the tags of type object in the page.

var objs = document.getElementsByTagName("object");

for (i=0; i<objs.length; i++) {

// Get the HTML content of each object tag

// and replace it with itself.

objs.outerHTML = objs.outerHTML;

}

}

}

// When the page unloads:

window.onunload = function() {

if (document.getElementsByTagName) {

//Get all the tags of type object in the page.

var objs = document.getElementsByTagName("object");

for (i=0; i<objs.length; i++) {

// Clear out the HTML content of each object tag

// to prevent an IE memory leak issue.

objs.outerHTML = "";

}

}

}

Copie o código acima e colem no bloco de notas.

Salve com o nome: dynActiveX.js .

Envie os arquivos dynActiveX.js e HTML (ou HTM) para seu servidor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu já estou enfrentando este problema atualizei o meu ie

 

Ta me enchendo o saco entrar em sites que ainda não atualizaram para contornar este problema e acredito que ainda vai demorar......

 

Mais procurando na net por meios que possam contornar esta situação achei um code bem interessante

 

http://blog.deconcept.com/flashobject/flashobject1-3.zip

 

Pra mim é a melhor forma para nos desenvolvedores

 

[]'s

Patrique

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu tinha atualizado depois desinstalei as atualizações. E tudo voltou ao normal.

 

O problema vai ser alterar o código de uma renca de sites...

 

EOLAS que vá pro inferno.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, fiz exatamente como esta explicado acima, porém não adiantou nada, o flash continua com aquela borda "linda" em volta. Acho que meu erro pode estar na primeira etapa, coloquei o código fielmente antes de fechar o /head, e fiz o arquivo JS, tudo com o caminho direitinho, mas não funcionou. Ta funcionando ainda este código ai de cima??Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

em meus sites funcionou o primeiro metodo.. porem da alguns erros criticos.. finalizando o brower depois de algum tempo no site... :/ o segundo metodo ainda nao tive problemas em meus sites.. é mais trabalhoso mais nao me deu dor de cabeca ainda..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Patrique, por acaso você saberia me dizer como, nesta sua indicação consigo colocar wmode=transparent para que meu swf fique transparente?

Compartilhar este post


Link para o post
Compartilhar em outros sites

o Fagner Guimarães postou lá no mx esta atualização do ie que resolve o problema...pelo menos pra nossa visualização....porq infelizmente ainda não é uma atualização automática.....mas já é alguma coisa....

 

LINK

Compartilhar este post


Link para o post
Compartilhar em outros sites

A questão é... Não adianta nada o desenvolvedor desinstalar a atualização ou baixar outra e parar de ver a borda se o usuário vai continuar com a batata na mão. Infelizmente temos que pensar na titia que ta do outro lado. Só gostaria de entender pq a microsoft fez isso... segurança? falta do que inventar? Ou mais uma jogadinha de marketing deles...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente....concordo com o BRezendeeu sou webdesigner dos 2 maiores portais de campos do jordão e estou sofrendo com essa incrivel atualização nojenta da MS.....eu colokei os scripts, mas acontece que nem com o Messiah, ele desblokeia por alguns instantes, mas dpois dah um erro na IE e fexa o navegador....tô fikando loko...qm kiser kebrar a kabeça junto cmg me add no msn tio_ed@hotmail.comabraço galeraa!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falae galera.

 

Todo mundo sabe q a MS perdeu uma ação judicial e perdeu os direitos do i.e. ter o flash player acoplado no browser... naum sei exatamente como funciona, como eh... Mas eh mais ou menos isso...

 

Agora o desenvolvedor precisa de uma "gambiarra" para conseguir desevolver os sites sem os erros, etc que acontecem atualmente no i.e.

 

Coloquei no meu blog um tutorialzim ensinando como fazer... Espero que ajude geral ae...

 

http://www.brunodulcetti.com/blog/2006/04/...ie-activex.html

 

Akele abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá a todos.

 

Tive esse problema esses dias e nenhuma solução encontrada fazia efeito com perfeição, principalmente quando fazia algumas manipulações com "div" e depois de procurar muito achei uma solução que muitos sites acabam usando para fazer o flash passar pela validação da w3c, é realmente simpples, tudo que tem de ser feito é escrever o código flash por java script:

 

function GerarSWF($arquivo,$altura,$largura,$id){	document.writeln('	<object id="globalnav-object" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="' + $largura + '" height="' + $altura + '" id="' + $id + '" name="' + $id + '">');	document.writeln('		<param name="movie" value="' + $arquivo + '" />');	document.writeln('		<param name="FlashVars" value="loc=en_US&htmlApp=false&gatewayURL=gwurl" />');	document.writeln('		<param name="bgcolor" value="#ffffff" />');	document.writeln('		<param name="menu" value="false" />');	document.writeln('		<param name="quality" value="high" />');	document.writeln('		<param name="salign" value="tl" />');	document.writeln('		<param name="scale" value="noscale" />');	document.writeln('		<param name="wmode" value="transparent" />');	document.writeln('		<embed id="globalnav-embed" src="' + $arquivo + '" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" wmode="transparent" flashvars="loc=en_US&htmlApp=false&gatewayURL=gwurl" bgcolor="#ffffff" menu="false" quality="high" salign="tl" scale="noscale" id="' + $id + '" width="' + $largura + '" height="' + $altura + '"></embed>');	document.writeln('	</object>');}

Detalhe, este tipo de função tem de ser chamado em um arquivo .js, não pode estar diretamente na página.

 

[ ]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, Gostaria de saber 3 coisas....1 - por quanto tempo, teremos de fazer estas gambiaras para o flsh funcionar....2 - Qual a posição da macromedia e da swishzone, perante isso, não vai sair uma versão de flash, referente, que já venha com tudo isso resolvido?3 - eu preciso fazer estas alterações apenas no frameset, ou eu tenho de fazer em todos os frames....era o que eu tinha pra perguntar...Atenciosamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, Gostaria de saber 3 coisas....1 - por quanto tempo, teremos de fazer estas gambiaras para o flsh funcionar....2 - Qual a posição da macromedia e da swishzone, perante isso, não vai sair uma versão de flash, referente, que já venha com tudo isso resolvido?3 - eu preciso fazer estas alterações apenas no frameset, ou eu tenho de fazer em todos os frames....era o que eu tinha pra perguntar...Atenciosamente.

1 - Como todos sabem com a Microsoft a correção depende deles já esse ocorre somente no IE.2 - Como disse, esse é um problema causado pela Microsoft devido uma atualização do IE tanto que esse problema não ocorre no Netscape, Opera, Safari, Firefox ou qualquer outro navegador.3 - Sim, você precisa mudar a forma como cria o objeto do flash em todos os lugares onde você pois um swf.[ ]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas mesmo assim, Tem uma previsão da regularização destes fatos? Levando em consideração que 99% dos usuários dos sites que eu administro, vou ter que mudar todos os meus sites...e a Pergunta três, eu perguntei a respeito de Frames. gostaria de saber se no Frame Set Principal for iserido a coreção terá efeito nos frames que montam o corpo todo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Todos os scripts de flash tem de ser refeitos não importa onde estejam ou quantos sejam.

A mudança era inevitável independente das mudanças no IE uma vez que você queira passar na validação da w3c detalhe, o próprio site da Macromedia (Adobe) usa este tipo de script para colocar swf na página do site deles. O que é w3c?

 

... Levando em consideração que 99% dos usuários dos sites que eu administro. ...

Que beleza cara, quer dizer que você vai ganhar uma boa grana, não foi por sua culpa que essas mudanças ocorreram, então se é de interesse que seus clientes querem se adaptar a nova realidade do IE, vão ter de te pagar por isso. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Se ainda fosse uma mudança especialmente feita só por causa dessa mudança no IE eu estaria http://forum.imasters.com.br/public/style_emoticons/default/yay.gif da vida mas, já é usada a muito tempo para colocar swf como eu disse, até pela Mocromedia, então beleza ^_^

 

[ ]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

A Microsoft mudou a maneira como os controles ActiveX funcionam no Internet Explorer. Esta mudança afeta todos os controles ActiveX interativos numa página web. Em particular, irá afetar todos os filmes flash (SWF) colocados numa página. Esta mudança é feita em resposta á acusação da EOLAS que reclama para si a patente no que respeita a este tipo de aplicações correrem numa página web.

 

Isto afetará o Macromedia Flash todos os produtos da SWiSHzone que exportam arquivos HTML+SWF: SWiSH Lite, SWiSH2, SWiSH Max, SWiSH Video, SWiSH Presenter, SWiSH Pix, como também todos os SWiSH Sites. Como o Flash todos os outras aplicações que usam as seguintes tags: <aplet> <embed> <obgect> ou seja: Flash Player, Windows Media Player, Quicktime, Real Player, JavaAplet etc...

 

Em 11 de Abril, a nova versão de Internet Explorer começou a ser distribuída.

Os novos computadores que trazem o Windows já incluirão a alteração do ActiveX. As versões já instaladas, terão esta mudança assim que fizerem a actualização do IE (Windows Update).

 

Esta atualização está disponível aqui: http://support.microsoft.com/kb/912945

 

O que é que acontece?

 

 

Quando o visitante acessa a página web, e esta contém o objeto swf, aparecerá uma linha cinzenta em volta dele. O visitante, tem de clicar no objeto, para ter acesso a ele.

Ou seja, sem clicar uma vez, não terá acesso aos links por exemplo.

 

SOLUÇÃO:

 

A Microsoft e a Macromedia estão estudando algumas soluções para que os efeitos deste "problema" seja minimizado. Contudo, uma forma que parece ser a mais simples é a seguinte:

Esta solução, consiste em adicionar a página web (HTML ou HTM) o seguinte códido antes do final do </header>

 

Código:

 

<!--[if gte IE 6]>

<script src="dynActiveX.js"></script>

<![endif]-->

Depois, é preciso criar o arquivo dynActiveX.js (JavaScript) contendo o seguinte código:

 

// When the page loads:

window.onload = function(){

if (document.getElementsByTagName) {

// Get all the tags of type object in the page.

var objs = document.getElementsByTagName("object");

for (i=0; i<objs.length; i++) {

// Get the HTML content of each object tag

// and replace it with itself.

objs.outerHTML = objs.outerHTML;

}

}

}

// When the page unloads:

window.onunload = function() {

if (document.getElementsByTagName) {

//Get all the tags of type object in the page.

var objs = document.getElementsByTagName("object");

for (i=0; i<objs.length; i++) {

// Clear out the HTML content of each object tag

// to prevent an IE memory leak issue.

objs.outerHTML = "";

}

}

}

Copie o código acima e colem no bloco de notas.

Salve com o nome: dynActiveX.js .

Envie os arquivos dynActiveX.js e HTML (ou HTM) para seu servidor.

 

e ae beleza cara :D seguinte funciono o codigo ae q você posto... mas onde ta assim galera:

 

<!--[if gte IE 6]>

<script src="dynActiveX.js"></script>

<![endif]-->

 

tem de colocar apenas 1 - (traço) e naum 2 - - (traços) se naum o codigo nem ativa no HTML beleza... ficando assim:

 

<!-[if gte IE 6]>

<script src="dynActiveX.js"></script>

<![endif]->

 

do resto vejam ae como funfa: Site

 

vejam ae, qq coisa se naum funcionar ou se der algum erro postem ae.... falow galera...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.