MANGOOST (80 pts)

MAURO ROCHA TAVARES (40 pts)

SÁVIO PONTE (39 pts)

DAAFY (55 pts)

ILVA RUDEV (90 pts)

LEANDRO AMANO (83 pts)

DANIELA PIRES (86 pts)

MUZAK (45 pts)

EDUARDO CARREGA (150 pts)

GUILHERME G.G. (137 pts)

BÁRBARA TOSTES (64 pts)

JOÃO NETO (78 pts)
Treinamento PontoFlash de Flash e ActionScript

Como fazer um ponteiro como o do jogo da Fortuna, que faz N giros e depois para?

Um filme feito no Flash5 abre em quem só tem o FlashPlayer 4?

Como carregar, via load Movie, um filme num determinado local (X,Y) do filme?

Como eu faço para: se a palavra digitada for qualquer então vá para frame 20 senão, vá para frame 30.

Como usar os métodos de desenho do Flash?

Como faço o loading bem simples?

Várias formas para fazer code animation (animação por actionscript).

Como fazer um preloader dinâmico no Flash?

Como dar um bom dia, boa tarde e boa noite dependendo da hora?

Como alterar duas propriedades de um objeto num só evento de um botão?

Como controlar uma cena com um botão dentro do Movieclip?

Quero alterar as cores de um movieclip dinamicamente através de actions.

Como colocar uma página em FullScreen?

Pra que serve o comando MovieClip.prototype?
Como enevoar as bordas de uma imagem no Fireworks.

0wn3d Again BY Destution Team

Parâmetro - Get camera().

Executar funções de JavaScript (Flash+JavaScript).

Alterar a parência dos componentes do FlashMX.

Plugins variados para seu trabalho em design

Salvando alterações feitas no layout (shared Objects).

Desenvolvendo um Tocador de Vídeo em Flash

Atenuação (easing).

Compartilhando fontes

Duplo clique.

Objeto Sound.
Move objects

Zoom rotate e pan

Munu ampliando

Cubos vivos

Placar

Motionguidemask1

Motion guide

Velocímetro

Photo album

Gettimer

Filtro de cores

Céu estrelado
HOME | TUTORIAIS
Detecção do FlashPlayer.
por Den Ivanov

Se você deseja detectar a presença e saber qual a versão do FlashPlayer instalado na máquina do usuário, comece criando um swf (eu o nomeei detection.swf) com 6 blank keyframes
com a seguinte ação no primeiro:

Set Variable: "ok" = "flash4or5"    
Go to and Play(ok)
no segundo: 
Get URL ("flash3and2.html")
no terceiro: 
Stop;

dê ao quarto keyframe o rótulo (label) "flash4or5" e nenhuma ação.

no quinto:
If (Substring (Eval("$version"), 5, 1) < 5)
  Get URL ("flash4.html")
Else
  Get URL ("flash5.html")
End I

para terminar, no último frame coloque:


Stop;

Importante

Lembre-se de que você deve editar esse arquivo .FLA no Flash4 e não no 5 !


Agora você deve editar seu código .html após a publicação (não vai haver instalação automática de active-x a partir de sua página com esse código).

<html>
<head>
<title>Detecção da presença e versão do Flash plug-in</title>
<meta HTTP-EQUIV="Refresh" CONTENT="8;URL=nonflash.html">
</head>
<body>
<p>
<center><h3>Por favor espere 8 segundos ...</h3></center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ID=index
WIDTH=2 HEIGHT=2>
<param NAME=movie VALUE="detection.swf">
<param NAME=quality VALUE=high>
<param NAME=bgcolor VALUE=#000000>
<embed src="detection.swf" quality=high bgcolor=#000000 WIDTH="2" HEIGHT="2"
TYPE="application/x-shockwave-flash">
</embed>
</object>
</body>
</html>
 

Se não houver um "Flash redirection" em 5 segundos, a página vai ser atualizada para hohflash.html.
Se o seu servidor é lento, mude de 8 (em "8;URL=nonflash.html") para 9 ou 10.
E não se esqueça do 2x2 :) (o tamanho real do filme pode ser qualquer um) para evitar que visitantes sem o Flash cliquem num espaço vazio onde não há filme.


Há apenas dois problemas com esse código:

1. visitantes sem suporte ao Flash tem que esperar por muito tempo (8 segundos)
A forma mais simples de evitar isso é acrescentar alguns strings de JavaScript. Não me refiro a monstros Java, como o "moock fpi" ou MM SDK (na verdade, nem entendo pra quê eles têm tanto código). Vamos manter simples as coisas simples :). Não precisamos saber nada sobre tentativas de instalar plug-ins para o browser e não precisamos saber informações de sistema a respeito desses plug-ins. A única coisa que precisamos saber é: esse plug-in funciona ou não?]. Ou, em outras palavras, document.movieID é ou não um objeto JS? Então, vamos acrescentar "JS accelerator" ao nosso já existente meta HTTP-EQUIV="Refresh".

Agora vai ficar assim:

<html>
<head>
<title>Detection Flash4 support</title>
<meta HTTP-EQUIV="Refresh" CONTENT="8;URL=nonflash.html">
</head>
<body>
<p>
<center><h3>Por favor, espere...</h3></center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
ID="detection" WIDTH="2" HEIGHT="2">
<param NAME=movie VALUE="detection.swf">
<param NAME=quality VALUE=high>
<param NAME=bgcolor VALUE=#000000>
<embed src="detection.swf" quality="high" NAME="detection" swLiveConnect="true"
bgcolor="#000000" WIDTH="2" HEIGHT="2"
TYPE="application/x-shockwave-flash">
</embed>
</object>
<SCRIPT LANGUAGE="JavaScript">
if (null == document.detection) {
location.href="nonflash.html";
}
</SCRIPT>
</body>
</html>

Pode ver a diferença? :)
Nota: Não foram encontrados bugs relativos a isso, após vários meses de testes. Mas se algo de errado acontecer em seu site, você pode enviar a URL do seu site e o nome do seu browser para www@ok.ru -:)


2.Segundo problema: caching.

Em uma vez a cada cem (ou mil), a atualização para nonflash.html pode ficar "disparado" (depois de pular uma vez para nonflash.html, pode continuar pulando sempre, mesmo depois da instalação do Flash support). Por enquanto, vejo apenas uma forma de evitar isso: cookies. Portanto, se você quer trabalhar com browsers sem suporte JavaScript (como mac/IE4.5), você tem que usar algum tipo de scripts de servidor para eles. E se você não tem suporte para scripts de servidor, você tem que esquecer que existe esse problema com o mac/IE4.5...
Vamos ver três formas de usar cookies para solucionar esse segundo problema:


Jeito normal com JS:
Ok :) vamos continuar adicionando JS ao seu código.
Antes de mais nada, vamos colocar um cookie a partir do nosso nonflash.html. Vai ficar assim:

<html>
<head>
<title>Html page</title>
<script language="JavaScript">
<!--
// tudo o que estiver depois de duas barras, é um comentário.
howlong=new Date(); // Ajusta a variável "howlong" para a hora atual
howlong.setTime(howlong.getTime() + 900000000); //adiciona 900000 sec a "howlong"
document.cookie = 'detection; expires=' + howlong.toGMTString(); //setting cookie
// -->
</script>
</head>
<body>
<center><h2>Flash support not detected</h2></center>
</body>
</html>

Depois disso, vamos procurar por cookies a partir de detection.html. Se os encontrar, atualize a página e delete o cookie.

<html>
<head>
<title>Detection Flash4 support</title>
<SCRIPT LANGUAGE="JavaScript">
<!--
if (!self.location.search && document.cookie) {
document.cookie = 'detection; expires = Mon, 7 Feb 2000 23:19:15 UTC';
location.href = "detection.html?refreshed";
}
// -->
</SCRIPT>
<meta HTTP-EQUIV="Refresh" CONTENT="8;URL=nonflash.html">
</head>
<body>
<p>
<center><h3>Please wait...</h3></center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
ID="detection" WIDTH="2" HEIGHT="2">
<param NAME=movie VALUE="detection.swf">
<param NAME=quality VALUE=high>
<param NAME=bgcolor VALUE=#000000>
<embed src="detection.swf" quality="high" NAME="detection" swLiveConnect="true"
bgcolor="#000000" WIDTH="2" HEIGHT="2"
TYPE="application/x-shockwave-flash">
</embed>
</object>
<SCRIPT LANGUAGE="JavaScript">
if (null == document.detection) {
setTimeout("location.href='nonflash.html'", 500);
}
</SCRIPT>
</body>
</html>

Aqui temos outro possível problema de caching - atualização iniciada. Para evitar isso, é melhor usar self.location.search (a condição !self.location.search significa que todas as ações dentro de for vão acontecer apenas se não houver nada depois de ? no string da url.


mesmas coisas com PHP

aqui está nonflash.php


<?
setcookie("detection","passed",gmdate(time()) +100000);
?>
<html>
<head>
<title>Html page</title>
</head>
<body>
<center><h2>Flash support not detected</h2></center>
</body>
</html>

e detection.php

<?
if ($HTTP_COOKIE_VARS["detection"] && !$first) {
setcookie("detection","",gmdate(time()) - 100000);
header("Location: detection.php?first=passed");
}
?>
<html>
<head>
<title>Detection Flash4 support</title>
<meta HTTP-EQUIV="Refresh" CONTENT="6;URL=nonflash.php">
</head>
<body>
<p>
<center><h3>Please wait...</h3></center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
ID="detection" WIDTH="2" HEIGHT="2">
<param NAME=movie VALUE="detection.swf">
<param NAME=quality VALUE=high>
<param NAME=bgcolor VALUE=#000000>
<embed src="detection.swf" quality="high" NAME="detection" swLiveConnect="true"
bgcolor="#000000" WIDTH="2" HEIGHT="2"
TYPE="application/x-shockwave-flash">
</embed>
</object>
<SCRIPT LANGUAGE="JavaScript">
<!--
if (null == document.detection) {
setTimeout("location.href='nonflash.php'", 500);
}
// -->
</SCRIPT>
</body>
</html>


mesmas coisas com ASP

aqui está nonflash.asp

<%@LANGUAGE="VBSCRIPT"%>
<%
Response.Cookies("detection") = "passed"
Response.Cookies("detection").Expires=Date + 10000
%>
<html>
<head>
<title>Html page</title>
</head>
<body>
<center><h2>Flash support not detected</h2></center>
</body>
</html>

e detection.asp

<%@LANGUAGE="VBSCRIPT"%>
<%
dim first
first=Request.QueryString("first")
If Request.Cookies("detection") <> Empty and first = Empty Then
Response.Cookies("detection").Expires=Date - 100
Response.redirect ("detection.asp?first=passed")
End If
%>
<html>
<head>
<title>Detection Flash4 support</title>
<meta HTTP-EQUIV="Refresh" CONTENT="6;URL=nonflash.asp">
</head>
<body>
<p>
<center><h3>Please wait...</h3></center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
ID="detection" WIDTH="2" HEIGHT="2">
<param NAME=movie VALUE="detection.swf">
<param NAME=quality VALUE=high>
<param NAME=bgcolor VALUE=#000000>
<embed src="detection.swf" quality="high" NAME="detection" swLiveConnect="true"
bgcolor="#000000" WIDTH="2" HEIGHT="2"
TYPE="application/x-shockwave-flash">
</embed>
</object>
<SCRIPT LANGUAGE="JavaScript">
<!--
if (null == document.detection) {
setTimeout("location.href='nonflash.asp'", 500);
}
// -->
</SCRIPT>
</body>
</html>

Uma coisa a mais:)
Se houver algum problema , meu e-mail é www@ok.ru :)

Den Ivanov

Baixe aqui os exemplos desse tutorial



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
0 comentário