Ir para conteúdo

POWERED BY:

Arquivado

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

Marcelo Kubart

Tickers com erro

Recommended Posts

Olá Pessoal,

Como vão?

 

O Meu problema é o seguinte fiz o tutorial:link.

Até aí tudo ok.

Bem aí tentei modificar ele para o que precisava. Ocorreram os seguintes problemas a Legenda não aparece e as fotos não são linkadas.

Segue Abaixo um link com o arquivo .fla, .swf, .xml, imagens e a imagem de como eu queria que ficasse a legenda.

Link - Sky Drive

 

Muito Obrigado

Marcelo Kubart

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Pessoal,

Como vão?

 

O Meu problema é o seguinte fiz o tutorial:link.

Até aí tudo ok.

Bem aí tentei modificar ele para o que precisava. Ocorreram os seguintes problemas a Legenda não aparece e as fotos não são linkadas.

Segue Abaixo um link com o arquivo .fla, .swf, .xml, imagens e a imagem de como eu queria que ficasse a legenda.

Link - Sky Drive

 

Muito Obrigado

Marcelo Kubart

 

Tente identificar seu erro, e posta o codigo para que alguem possa te ajudar, porque nao da pra gnt pegar os arquivos e fazer.

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

AS 2.0

CODE
//Importando as classes para fazer os movimentos dinâmicos

import mx.transitions.*;

import mx.transitions.easing.*;

 

//Criando o xml e fazendo ele ignorar espaços em branco

var tickersXML:XML = new XML();

tickersXML.ignoreWhite = true;

 

//Quando o xml carregar com sucesso executar as funções

tickersXML.onLoad = function(success:Boolean):Void {

 

//(o xml é carregado na última linha do script)

if (success) {

 

//Número total de tickers

n_tickers = tickersXML.firstChild.childNodes.length;

 

/*O ticker_atual será o último pois ao executar a função de

proximoTicker() ele passará automaticamente para o 1º resultado*/

ticker_atual = n_tickers;

 

//Acertando as funções dos botões

prox_btn.onRelease = function():Void {

 

//Se o fade das fotos tiver terminado

if (fotoIn.position == fotoIn.finish) {

 

//Vai para o próximo ticker

proximoTicker();

}

};

 

ant_btn.onRelease = function():Void {

if (fotoIn.position == fotoIn.finish) {

anteriorTicker();

}

};

 

//Chamando o primeiro ticker

proximoTicker();

 

//Criando o menu duplicando o quadradinho existente

//Deixando o quadradinho base invisível

menu._visible = false;

 

//Pegando a posição inicial _x do menu

var menu_x = menu._x;

 

//Definindo a distância entre os botões

var menu_dist = 35;

 

//Criando um laço que gerará os botões do menu. Ele executa uma vez para cada ticker.

for (var i:Number = 0; i < n_tickers; i++) {

 

//Duplicando o movieclip menu

//O depth é i+5 porque até o depth 4 existem mcs ocupando [fotomc1, fotomc2, legenda_mc, area_mc]

var menubtn:MovieClip = menu.duplicateMovieClip("menu" + i, i + 5);

 

//Movendo o botão duplicado no eixo x.

menubtn._x = i * menu_dist + menu_x;

 

//Número do ticker

menubtn.numero = i;

 

//Texto do botãozinho

menubtn.numero_txt.text = i + 1;

 

//Quando apertar o botão, mudar para ticker indicado

menubtn.botao.onRelease = function():Void {

 

//Se o fade tiver terminado

if (fotoIn.position == fotoIn.finish) {

 

vaiParaTicker(this._parent.numero);

}

};

}

 

} else {

 

//Caso dê errado o carregamento, avise

sobeLegenda();

legenda_mc.titulo_txt.text = "Ocorreu um erro";

legenda_mc.texto_txt.text = "Por favor entre em contato com a administração";

}

};

 

/*******************************************************

Códigos do passo 3.3 em diante serão adicionados aqui

*******************************************************/

//Função que passa para o próximo ticker

function proximoTicker():Void {

 

//Se o ticker atual não for o último, aumenta em 1, se for ele vai para 0

ticker_atual < n_tickers - 1 ? ticker_atual++ : ticker_atual = 0;

 

insereDados(ticker_atual);

 

//Limpando o intervalo de troca de tickers

clearInterval(ticker_intervalo);

}

 

//Função que passa para o ticker anterior

function anteriorTicker():Void {

 

//Mesmo esquema da outra função

ticker_atual > 0 ? ticker_atual-- : ticker_atual = n_tickers - 1;

 

insereDados(ticker_atual);

}

 

//Função que vai direto para um ticker, é o mesmo esquema das outras

function vaiParaTicker(numero_ticker:Number):Void {

 

ticker_atual = numero_ticker;

 

insereDados(ticker_atual);

}

 

//Função que insere os dados vindo do XML no nosso sitema

function insereDados(ticker_atual:Number):Void {

 

//Colocando titulo e texto na legenda

legenda_mc.titulo_txt.text = tickersXML.firstChild.childNodes[ticker_atual].childNodes[1].firstChild.nodeValu

e + " > " + tickersXML.firstChild.childNodes[ticker_atual].childNodes[0].firstChild.nodeValu

e;

 

legenda_mc.texto_txt.text = tickersXML.firstChild.childNodes[ticker_atual].childNodes[2].firstChild.nodeValu

e;

 

//Carregando a foto

carregaFoto(tickersXML.firstChild.childNodes[ticker_atual].childNodes[3].firstCh

ild.nodeValue);

 

//Definindo o link para quando clicar na foto

area_mc.onRelease = function():Void {

getURL(tickersXML.firstChild.childNodes[ticker_atual].childNodes[4].firstChild.n

odeValue, "_self");

};

}

//Desenvolvido

if(ticker_atual < n_tickers - 1) {

ticker_atual++;

} else {

ticker_atual = 0;

}

 

//Reduzido

ticker_atual < n_tickers - 1 ? ticker_atual++ : ticker_atual = 0;

 

//Criando os dois movieclips para carregar as fotos

this.createEmptyMovieClip("fotomc1", 2);

this.createEmptyMovieClip("fotomc2", 1);

 

//Posicionando os mcs no palco

fotomc1._x = fotomc2._x = area_mc._x;

fotomc1._y = fotomc2._y = area_mc._y;

 

//Definindo qual está em cima (por causa dos fades)

fotoCima = fotomc1;

 

//Colocando a legenda por cima das fotos

legenda_mc.swapDepths(3);

 

//Função que carrega a foto e cria os fades

function carregaFoto(scr:String):Void {

 

//Parando o fade da foto anterior caso ainda esteja ocorrendo

fotoIn.stop();

 

//Criando o mcloader

var mclFoto:MovieClipLoader = new MovieClipLoader();

 

//Carregando a foto

mclFoto.loadClip(scr, fotoCima);

 

//Quando terminar de carregar a foto

this.onLoadInit = function():Void {

 

//Chamar o próximo ticker

clearInterval(ticker_intervalo);

ticker_intervalo = setInterval(proximoTicker, 5000);

 

//Fazer o fadeIn com a foto de cima

fotoIn = new Tween(fotoCima, "_alpha", None.easeNone, 0, 100, 1, true);

 

//Quando terminar a transição de fotos

fotoIn.onMotionFinished = function():Void {

 

//Pegar a foto de cima e jogar para trás

if (fotoCima == fotomc1) {

 

//Tirando o clip do fotomc2 que irá para frente

mclFoto.unloadClip(fotomc2);

fotomc1.swapDepths(fotomc2);

 

//Ao ir pra frente estará preparado para receber outra foto

fotoCima = fotomc2;

} else {

//Mesma coisa, caso seja o fotomc2 que estiver em cima

mclFoto.unloadClip(fotomc1);

fotomc2.swapDepths(fotomc1);

fotoCima = fotomc1;

}

};

};

//Adicionando o listener ao mcloader

mclFoto.addListener(this);

}

 

//Fazendo com que a legenda suba quando o mouse estiver em cima da foto

area_mc.onRollOver = sobeLegenda;

area_mc.onRollOut = desceLegenda;

area_mc._alpha = 0;

area_mc.swapDepths(4);

 

//Pegando as posições da legenda

var leg_aparece = legenda_mc._y;

var leg_esconde = legenda_mc._y + legenda_mc._height + 1;

 

//Função que esconde a legenda com Tweens

function desceLegenda():Void {

var desceTween:Tween = new Tween(legenda_mc, "_y", Strong.easeOut, legenda_mc._y, leg_esconde, 1.5, true);

}

 

//Função que mostra a legenda com Tweens

function sobeLegenda():Void {

var sobeTween:Tween = new Tween(legenda_mc, "_y", Strong.easeOut, legenda_mc._y, leg_aparece, 1.5, true);

}

 

//Abaixando a legenda por padrão

legenda_mc._y = leg_esconde;

 

//Configurando a máscara da legenda

legenda_mc.setMask(mascara_mc);

 

//Adequado

n_tickers = tickersXML.firstChild.childNodes.length;

for (var i:Number = 0; i < n_tickers; i++) {}

 

//Não adequado

for (var i:Number = 0; i < tickersXML.firstChild.childNodes.length; i++) {}

 

//Recomendado

var menubtn:MovieClip = menu.duplicateMovieClip("menu" + i, i + 5);

menubtn._x = i * 25 + 58;

 

//Não recomendado

menu.duplicateMovieClip("menu" + i, i + 5);

_root["menu"+i]._x = i * 25 + 58;

 

//Carregando o XML e dando início ao processo

tickersXML.load("tickers.xml");

imagem de como eu gostaria que ficasse:

 

Imagem Postada

 

Como Está:

 

Imagem Postada

 

Bom nesse site aqui tem tbm o swf rodando:

Link

 

Os problemas são os seguintes as legendas não aparecem e as imagens não estão linkadas

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.