» Início » Desenvolvimento » Flash » "Clique aqui para ativar e usar este controle"
 
Avaliação: | Publicado em: 03/12/2006
"Clique aqui para ativar e usar este controle"
Antonio Alexandre Alonso de Siqueira Webdesigner que fala japonês, curte programação e artes gráficas.


Abaixo está a solução criada e divulgada pela Macromedia, um pouco antes de ser adquirida pela Adobe.

Comece criando a função que escreverá as animações em flash do seu site:

Clique aqui para visualizar o código (printscreen - o código digitado encontra-se dentro do arquivo flash_js.zip anexado ao artigo)

Digite/copie e cole esse código no seu editor de textos predileto, pode ser o Notepad, e salve com o nome "escreve_flash.js". Tenha certeza em saber se você não está salvando o arquivo com o nome "escreve_flash.js.txt". Isso é um erro comum pra quem trabalha sem mostrar a extensão dos arquivos. No Windows XP, para visualizar as extensões dos arquivos vá em "Meu computador" > Menu "Ferramentas" > "Opções de Pasta" > Clique na aba "Modos de exibição" > e desmarque a opção "Ocultar extensões dos tipos de arquivos conhecidos".

Acrescente no head das páginas com Flash a linha:



Feito isso, no lugar onde está o script, coloque a chamada da função passando o nome do swf(não digite ".swf"), a largura e a altura:



Já o código original do seu flash, não apague-o. Coloque-o dentro de tags <noscript> e </noscript> , pois assim, caso a pessoa tenha desativado java-script, conseguirá ver o flash com o aviso incoveniente mesmo.

Printscreen

Nota: O exemplo foi feito com a página, o swf e o js estando na mesma pasta. Caso você separe os arquivos em pastas, o que é uma prática normal e mostra que você é organizado, não se esqueça de pôr os caminhos nos arquivos.
Ex: Na chamada do script chamaria normalmente
<script src="pasta_dos_js/escreve_flash.js"></script>
E no trecho ... <embed src="'+nome+'.swf" ...  mudaria para ... <embed src="pasta_dos_swf/'+nome+'.swf" ...

No arquivo em anexo flash_js.zip está o código dessa função de exemplo, junto com um swf e uma página htm.

Espero que o artigo lhe seja útil.
Abraços,
Antonio Alexandre Alonso de Siqueira

Este artigo é a parte 2 de 5 da seguinte série:

Alexandre
Até o prórpio Plugmasters pode usar esse tutorial pra tirar o aviso dos flashes.
Bom
Muito útil.
nao consigo colocar nada no meu site

Antonio Alexandre
??? : Não avaliado
Mauricio <maulegal@gmail.com>
Só tem um problema. Poderia colocar a dica de como substituir a funcção wmode="transparent" neste novo script.
desconhecido
esse é melhor http://andregs.blogspot.com/2006/09/swfobject-insero-e-deteco-do-flash.html : Não avaliado
Areshandore
Mauricio, pra incluir o wmode="transparent" que você usa nos seus flashes transparentes, basta inserir no mesmo local que você encontra no seu código flash na função que está no arquivo .js .
Só que ao invés de escrever wmode="transparent" será necessário escapar essas aspas usando contra-barras wmode="transparent" ou substituir as mesmas por aspas simples wmode='transparent' . Se não fizar isso as aspas duplas causam um erro ao fechar a primeira aspa dupla do comando javascript.
Areshandore
Agora que olhei de novo, no script está o contrário, o comando está com aspas simples, daí pode colar com aspas duplas mesmo. É só pegar e inserir o código em escreve_flash.js

Crie uma nova linha:

document.write('<param name="wmode" value="transparent">');

Pode colocá-la entre as outras tag param, pode colar na linha 10 por exemplo.
funcionou, mas a pagina ficou com uns errinhos, e agora? =(
mark
o codigo ta atrapalhando uma tabelas =( naum entendo nada de codigo...
Um opção boa é instalar a atualizacao do Dreamweaver que se baixa no site da adobe
Muito bom o tutorial, tenho certeza que vai ajudar muita gente! parabéns!!!
Acelio FIlho <acelio@floripasom.com>
Mando aqui duas funções para imprimir o flash.
Acrescente em seu arquivo javascript.

a primeira com: largura, altura, arquivo, fundo(cor de fundo) e transparencia(para IE)
e outra pra quem precisa passar variáveis para o flash.
Use mas mantenha os cráditos

//Autor: Acelio Filho acelio@floripasom.com

function flash(largura, altura, arquivo, fundo, transparencia){
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'largura'" height="'altura'" id="teste" align="middle">');
document.write('<param name="allowScriptAccess" value="sameDomain" /><param name="wmode" value="'transparencia'" /><param name="menu" value="false" />');
document.write('<param name="movie" value="'arquivo'" /><param name="quality" value="best" /><param name="bgcolor" value="'fundo'" /><embed src="'arquivo'" wmode="'transparencia'" bgcolor="'fundo'" menu="false" quality="best" width="'largura'" height="'altura'" name="teste" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
document.write('</object>');
}


//flash com variaveis
// Como o EMBED, via GET dá erro de caracteres no FireFox e Netscape,
// NÃO USAR ACENTOS GRÁFICOS NAS VARIÁVEIS (FlashVars):
//<param name="FlashVars" value="'variaveis'" /> para IE
// <embed src="'arquivo'?'variaveis'" ... Para os outros
function flash2(largura, altura, arquivo, fundo, transparencia, variaveis){
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'largura'" height="'altura'" id="teste" align="middle">');
document.write('<param name="allowScriptAccess" value="sameDomain" /><param name="wmode" value="'transparencia'" /><param name="menu" value="false" />');
//document.write('<param name="movie" value="'arquivo'" /><param name="FlashVars" value="'variaveis'" /><param name="quality" value="best" /><param name="bgcolor" value="'fundo'" /><embed src="'arquivo'?'variaveis'" wmode="'transparencia'" bgcolor="'fundo'" menu="false" quality="best" width="'largura'" height="'altura'" name="teste" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
document.write('<param name="movie" value="'arquivo'" /><param name="FlashVars" value="'variaveis'" /><param name="quality" value="best" /><param name="bgcolor" value="'fundo'" /><embed src="'arquivo'" FlashVars="'variaveis'" wmode="'transparencia'" bgcolor="'fundo'" menu="false" quality="best" width="'largura'" height="'altura'" name="teste" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
document.write('</object>');
}
Foi mto bom mas tem um porém ....
Depois que que fiz todos os procedimentos minha página sai totalmente de diagramação ...
Qndo tiro o javascript ela fica normal ...qndo a coloco sai de formatação ....
Sabe me responder o que está ocorrendo?

obrigado
Valeu pela dica parceiro !
quero personalizar,incrementar com figuras.