Ir para conteúdo

POWERED BY:

Arquivado

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

jocamo

Legenda aparecer quando imagem carregar

Recommended Posts

Tenho esta AS e quero fazer com que o texto(texto dinamico, instaciado "txt) que esta dentro deste movie clip, instanciado "info_mc" apareça sempre que clicar nos thumbnails (menu_mc) ou na setas (bttnPrev, bttnNext)

Do jeito que está a AS, o texto só aparece quando o mouse é colocado em cima da imagem carregada.Se tirar o mouse de cima da imagem a legenda some.

Quero que a legenda apareça assim que a imagem carregue. e permaneça até chamar outra imagem.

____

ACtion que está no frame:

_____

 


//
// INITIAL SETTINGS
//
slideShow = false;
if (slideShow) {
	bttnAutoPlay.gotoAndStop(2);
}
import mx.transitions.Tween;
import mx.transitions.easing.*;
menu_all._visible = false;
holder._alpha = 0;
destWidth = holder._width+border;
destHeight = holder._height+border;
// Set first gallery displayed by default
galleryID = 0;
// Set first image displayed by default
ID = 0;
// Set your document stage width and height here
stageW = 900;
stageH = 550;
// Set spacing amount between thumbnail images
thumbSpace = 1;
// Set the maximum amount of thumbs to be displayed here. Scrolling will be enabled if total of thumbs is greater than default_maxThumbs
default_maxThumbs = 8;
// Set border amount here
border = 15;
menu_mc.bgX = menu_mc.bg._x;
// Set initial size of white bg here
destWidth = bg_mc.bg._width=100;
destHeight = bg_mc.bg._height=100;
// Alignment varibles
fullscreen_mcY = fullscreen_mc._y;
bgX = bg._x;
bgY = bg._y;
menu_mcX = menu_mc._x;
menu_mcY = menu_mc._y;
// Hides these movieclips initially
hover_mc._visible = false;
info_mc._alpha = 100;
info_mc.destAlpha = 100;
bttnNext._visible = true;
bttnPrev._visible = true;
//
// CSS STYLESHEET
//
var styles = new TextField.StyleSheet();
// Set hyperlink colour and decoration here
styles.setStyle("a:link", {color:'#00FFFF', textDecoration:'none'});
styles.setStyle("a:hover", {color:'#00FFFF', textDecoration:'underline'});
info_mc.txt.html = true;
info_mc.txt.styleSheet = styles;
//
// LARGE IMAGE TRANSITION
//
// You can use custom easing types such as: Back, Bounce, Elastic, Regular, Strong, None
var tweenAlpha:Tween = new Tween(holder, "_alpha", Strong.easeOut, 0, 100, 1, true);
tweenAlpha.stop();
var tweenAlphaPreloader:Tween = new Tween(preloader, "_alpha", Strong.easeOut, 100, 0, 1, true);
tweenAlphaPreloader.stop();
imageLoaded = function () {
	holder._alpha = 0;
	tweenAlpha.rewind();
	tweenAlpha.stop();
	currWidth = bg_mc.bg._width;
	currHeight = bg_mc.bg._height;
	destWidth = holder._width+border;
	destHeight = holder._height+border;
	// You can use custom easing types such as: Back, Bounce, Elastic, Regular, Strong, None
	var tweenWidth:Tween = new Tween(bg_mc.bg, "_width", Bounce.easeOut, currWidth, destWidth, 1, true);
	var tweenHeight:Tween = new Tween(bg_mc.bg, "_height", Bounce.easeOut, currHeight, destHeight, 1, true);
	tweenAlphaPreloader.start();
	tweenWidth["onMotionFinished"] = function () {
		if (tweenWidth.position == destWidth && tweenAlpha.position == 0) {
			tweenAlpha.start();
		}
	};
	// Check if autoplay is enabled
	if (slideShow) {
		clearInterval(_global.timeInterval);
		_global.timeInterval = setInterval(slideTimer, 3000);
	} else {
		clearInterval(_global.timeInterval);
	}
};
//
// AUTOPLAY FUNCTION
//
slideTimer = function () {
	trace('slideTimer');
	clearInterval(_global.timeInterval);
	if (slideShow) {
		ID += 1;
		if (ID == total) {
			ID = 0;
			galleryID += 1;
			if (galleryID == galleryTotal) {
				galleryID = 0;
			}
			buildGallery();
		}
		menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
		loadID();
	}
};
//
// ON STAGE RESIZE 
//
stageListener = new Object();
Stage.addListener(stageListener);
alignObjects = function () {
	// Align menu
	menu_mc._x = menu_mcX-(Stage.width-stageW)/2+(Stage.width-stageW)/2;
	menu_mc._y = menu_mcY+(Stage.height-stageH)/6;
	menu_mc.bg._x = menu_mc.bgX-(Stage.width-stageW)/2;
	menu_mc.bg._width = Stage.width;
	menu_all._y = Math.round(-(Stage.height-stageH)/2);
	menu_all._x = Math.round(-(Stage.width-stageW)/2+(Stage.width-menu_all._width)/2);
	// Align autoplay
	bttnAutoPlay._y = -(Stage.height-stageH)/2+Stage.height-26;
	bttnAutoPlay._x = -(Stage.width-stageW)/2+Stage.width/2-bttnAutoPlay._width/2;
};
stageListener.onResize = function() {
	alignObjects();
};
alignObjects();
//
// BUTTON FUNCTIONS 
//
bg_mc.bg.bttnNext.onRelease = function() {
	nextID();
	menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
};
bg_mc.bg.bttnNext.onRollOver = function() {
	bttnNext._visible = true;
};
bg_mc.bg.bttnNext.onRollOut = bg_mc.bg.bttnNext.onDragOut=function () { bttnNext._visible = true;
};;;;;;;;;
bg_mc.bg.bttnPrev.onRelease = function() {
	prevID();
	menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
};
bg_mc.bg.bttnPrev.onRollOver = function() {
	bttnPrev._visible = true;
};
bg_mc.bg.bttnPrev.onRollOut = bg_mc.bg.bttnPrev.onDragOut=function () { bttnPrev._visible = true;
};;;;;;;;;


info_bttn.bttn.onRollOver = function() {
	info_mc.destAlpha = 100;
};
info_bttn.bttn.onRollOut = info_bttn.bttn.onDragOut=function () { info_mc.destAlpha =100;
};;;
//
// AUTOPLAY BUTTON
//
bttnAutoPlay.bttn.onPress = function() {
	if (this._parent._currentframe == 1) {
		slideShow = true;
		this._parent.gotoAndStop(2);
		slideTimer();
	} else {
		slideShow = false;
		this._parent.gotoAndStop(1);
		clearInterval(_global.timeInterval);
	}
};
//
// LOAD ID FUNCTIONS
//
nextID = function () {
	if (ID<(total-1)) {
		ID++;
		loadID();
	}
};
prevID = function () {
	if (ID>0) {
		ID--;
		loadID();
	}
};
loadID = function () {
	tweenAlphaPreloader.stop();
	tweenAlphaPreloader.rewind();
	preloader._alpha = 100;
	tweenAlpha.rewind();
	tweenAlpha.stop();
	destAlpha = 100;
	holder._alpha = 100;
	info_mc._alpha = 100;
	info_mc.destAlpha = 100;
	menu_mc.hover.txt.text = Caption[ID];
	loadMovie(Large[ID], holder);
};
_global.thumbClick = function() {
	loadID();
};
//
// DISPLAY INFO TEXT
//
setText = function () {

	info_mc.txt.htmlText = Copy[ID];
	info_mc.txt._width = info_mc.bg._width-20;
	info_mc.txt._x = info_mc.bg._x+20;
	info_mc.txt._height = info_mc.txt.textHeight+10;
	info_mc._x = holder._x;
	//Altera a posição do texto legenda (-10)
	//
	info_mc._y = holder._y+holder._height-info_mc._height-10;
};
//
// ON IMAGE LOAD
//
alignPic = function () {
	holder._x = (stageW-holder._width)/2;
	holder._y = (stageH-holder._height-menu_mc._height)/2;
	bg_mc.bg._x = holder._x;
	bg_mc.bg._y = holder._y;
	bg_mc._x = holder._width/2;
	bg_mc._y = holder._height/2;
	bttnNext._y = holder._y+(holder._height-bttnNext._height)/2;
	bttnNext._x = bg_mc._width+(stageW-bg_mc._width)/2-bttnNext._width-border/2;
	bttnPrev._y = holder._y+(holder._height-bttnPrev._height)/2;
	bttnPrev._x = (stageW-bg_mc._width)/2+bttnPrev._width+border/2;
	preloader._x = holder._x+holder._width/2;
	preloader._y = holder._y+holder._height/2;
};
alignPic();
//
// BUILD GALLERY FUNCTION
//
buildGallery = function () {
	menu_all.destX = menu_all.header_mc._width+1+(menu_all.menu_mc._width+1)*galleryID;
	menu_all.doTween();
	ID = 0;
	destWidth = 0;
	destHeight = 0;
	//Remove previously created photos and thumbs
	for (j=0; j<currentTotal; j++) {
		menu_mc.scroll_mc.thumb_mc["thumb"+j].removeMovieClip();
	}
	total = xmlNode.childNodes[galleryID].childNodes.length;
	maxThumbs = default_maxThumbs;
	//Disable scrolling if too few thumbs
	if (maxThumbs>total) {
		maxThumbs = total;
	}
	// Sets destination width and height for each image                                                       
	for (i=0; i<total; i++) {
		Thumb[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Thumb;
		Large[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Large;
		Caption[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Caption;
		Colour[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Colour;
		
		
		
		
		Copy[i] = xmlNode.childNodes[galleryID].childNodes[i].childNodes[0].firstChild.nodeValue;
		
		
		
		
		//Build thumb menu
		menu_mc.scroll_mc.thumb_mc.thumb.duplicateMovieClip("thumb"+i, i);
		menu_mc.scroll_mc.thumb_mc["thumb"+i]._x = (menu_mc.scroll_mc.thumb_mc["thumb"+i]._width+thumbSpace)*i;
		loadMovie(Thumb[i], menu_mc.scroll_mc.thumb_mc["thumb"+i].holder);
		menu_mc.scroll_mc.thumb_mc["thumb"+i].ID = i;
		menu_mc.scroll_mc.mask_mc._width = ((menu_mc.scroll_mc.thumb_mc.thumb._width+thumbSpace)*maxThumbs)-thumbSpace;
		menu_mc.scroll_mc._x = Math.round(-(Stage.width-stageW)/2+Stage.width/2-menu_mc.scroll_mc.mask_mc._width/2);
		//Reset scroll menu to first image on gallery load
		menu_mc.scroll_mc.thumb_mc._x = 0;
		menu_mc.scroll_mc.destX = 0;
	}
	loadID();
	currentTotal = total;
};
//
// THUMBNAIL MENU AND PRELOADER SCRIPT
//
this.menu_mc.thumb_menu.destX = this.menu_mc.thumb_menu._x;
onEnterFrame = function () {
	// Align large image
	alignPic();
	this.menu_mc.thumb_menu._x += (this.menu_mc.thumb_menu.destX-this.menu_mc.thumb_menu._x)/3;
	//Info show and hide
	info_mc._alpha += (info_mc.destAlpha-info_mc._alpha)/3;
	header_mc._alpha = info_mc._alpha;
	loaded = holder.getBytesLoaded();
	filesize = holder.getBytesTotal();
	percentage = Math.round((loaded/filesize)*100);
	// Preloader script
	if (filesize == loaded && filesize>100) {
		preloader.left.half._rotation = 180;
		preloader.right.half._rotation = 180;
		if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) {
			if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) {
				setText();
				info_mc.destAlpha = 100;
			} else {
				info_mc.destAlpha = 0;
			}
		} else {
			info_mc.destAlpha = 0;
		}
	} else {
		info_mc._alpha = 0;
		info_mc.destAlpha = 0;
		if (isNaN(percentage) or percentage == 0) {
			percentage = 0;
			preloader.left.half._rotation = 0;
			preloader.right.half._rotation = 0;
		} else if (percentage<=50 && percentage>0) {
			preloader.left.half._rotation = 0;
			preloader.right.half._rotation = (360/100)*percentage;
		} else if (percentage>50 && percentage<100) {
			preloader.left.half._rotation = (360/100)*(percentage-50);
			preloader.right.half._rotation = 180;
		}
	}
	preloader.percentageTxt = percentage;
};
//
// LOAD XML DATA
//
loadXML = function (loaded) {
	if (loaded) {
		xmlNode = this.firstChild;
		Name = [];
		Thumb = [];
		Large = [];
		Caption = [];
		Copy = [];
		galleryTotal = xmlNode.childNodes.length;
		menu_all.header_mc.headerName.text = xmlNode.attributes.Name;
		for (n=0; n<galleryTotal; n++) {
			menu_all.menu_mc.duplicateMovieClip("menu_mc"+n, n);
			menu_all["menu_mc"+n]._x = menu_all.header_mc._width+1+(menu_all.menu_mc._width+1)*n;
			menu_all["menu_mc"+n].txt_mc.categoryName.text = xmlNode.childNodes[n].attributes.Name;
			menu_all["menu_mc"+n].ID = n;
			alignObjects();
		}
		menu_all._visible = true;
		menu_all.menu_mc._visible = true;
	} else {
		trace("Error loading XML");
	}
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("conteudo.xml");
stop();

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só tirar a função RollOver do texto

 

E setar ele para ._visible = true no codigo que carrega a imagem ;)

 

Abraços

 

Pensamento do dia:

"Copiar é fácil, o dificil é entender o que você está copiando".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Berseck, vou tentar as alterações sugeridas, mas quanto ao seu "Pensamento do dia". não estou copiando nada. Comprei um template da Activeden e como você deve saber template já vem com tudo pronto . E é aí que estou tentando mudar este detalhe, apenas este, pois prefiro assim: legenda aparecer quando chamo a imagem... e como meu ingles não é lá estas coisas....

Sei que você tem a maior boa vontade de resposnder as dúvidas dos membros deste forum , e caso eu soubesse como fazer , não precisaria postar nada,concorda? Mudei outras coisas nesta AS, tal como os botões ficarem sempres visiveis e o local da legenda. Só não consegui isto que postei.Vou tentar , mas caso não consiga agradeceria se pudesse ser mais preciso , tipo quel linha do code mudo.Agradeço assim mesmo e um grande abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fio o pensamento do dia não foi para lhe ofender =)

 

Eu tbm faço esse tipo de coisa

Se lhe ofendi me desculpe, não era minha intenção.

 

O script ta bem formadinho e tals...

Auto explicativo ele.

 

Mas tipo vou lhe dar umas dicas

 

Quando você ta tentando mudar algo, mas não sabe quando é chamado, use um comando muito util:

trace();

 

Você vai podondo trace em tudo dentro do seu script escrevendo qual o nome da função, que ai você vai ver o que acontece, e qual é a hora que cada função é chamada.

 

Por exemplo o que você quer você mesmo respondeu na sua pergunta.

Quando você coloca o mouse sobre a imagem aparece o texto... então vamos ver, temos 2 opções

 

Estar dentro de uma função com RollOver ou dentro de algum HitTest

 

Ai procurei dentro das funções rollOver e não encontrei nada

Mas na hora que procurei por HitTest encontrei isso:

 if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) {
 if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) {
 setText();
 info_mc.destAlpha = 100;
 } else {
 info_mc.destAlpha = 0;
 }
 } else {
 info_mc.destAlpha = 0;
 }
O que isso ai faz????

Bom ele simplesmente pergunta se voê ta com o mouse sobre a imagem ou não... se estiver ele faz um alfa, e coloca em 100.

Caso contrario deixa em alpha = 0

 

Então o que você tem que fazer seria apagar provavelmente essa função e pronto vai funcionar... pelo menos deveria.

 

E se não funcionar veja o que aconteceu... pois ai você vai descobrir o que isso ai fazia ;)

 

A brincadeira do copiar, mas não entender o que copiou é bem antiga.

Pois milhares de professores foram contra a propagação da internet na juventude, pois os alunos copiavem e colavam da internet em seus arquivos, imprimiam o trabalho, sem ao menos se darem o trabalho de ler.

 

Não fiz para ofender ninguem ;)

Eu to aqui para ajudar, não para acusar ou sacanear em quem dúvidas.

 

Apesar de alguns merecerem rs

 

Porque não saber e perguntar é um passo para deixar a ignorancia ;)

Perguntar é divino

Ficar calado é burrice quando não se sabe.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fio o pensamento do dia não foi para lhe ofender =)

 

Eu tbm faço esse tipo de coisa

Se lhe ofendi me desculpe, não era minha intenção.

 

O script ta bem formadinho e tals...

Auto explicativo ele.

 

Mas tipo vou lhe dar umas dicas

 

Quando você ta tentando mudar algo, mas não sabe quando é chamado, use um comando muito util:

trace();

 

Você vai podondo trace em tudo dentro do seu script escrevendo qual o nome da função, que ai você vai ver o que acontece, e qual é a hora que cada função é chamada.

 

Por exemplo o que você quer você mesmo respondeu na sua pergunta.

Quando você coloca o mouse sobre a imagem aparece o texto... então vamos ver, temos 2 opções

 

Estar dentro de uma função com RollOver ou dentro de algum HitTest

 

Ai procurei dentro das funções rollOver e não encontrei nada

Mas na hora que procurei por HitTest encontrei isso:

 if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) {
 if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) {
 setText();
 info_mc.destAlpha = 100;
 } else {
 info_mc.destAlpha = 0;
 }
 } else {
 info_mc.destAlpha = 0;
 }
O que isso ai faz????

Bom ele simplesmente pergunta se voê ta com o mouse sobre a imagem ou não... se estiver ele faz um alfa, e coloca em 100.

Caso contrario deixa em alpha = 0

 

Então o que você tem que fazer seria apagar provavelmente essa função e pronto vai funcionar... pelo menos deveria.

 

E se não funcionar veja o que aconteceu... pois ai você vai descobrir o que isso ai fazia ;)

 

A brincadeira do copiar, mas não entender o que copiou é bem antiga.

Pois milhares de professores foram contra a propagação da internet na juventude, pois os alunos copiavem e colavam da internet em seus arquivos, imprimiam o trabalho, sem ao menos se darem o trabalho de ler.

 

Não fiz para ofender ninguem ;)

Eu to aqui para ajudar, não para acusar ou sacanear em quem dúvidas.

 

Apesar de alguns merecerem rs

 

Porque não saber e perguntar é um passo para deixar a ignorancia ;)

Perguntar é divino

Ficar calado é burrice quando não se sabe.

 

Abraços

 

Vamos a vida, cara, não foi ofença, de jeito nenhum.

Obrigado mais uma vez e um grande abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Retirei estas linhas e agora o texto da legenda não aparece, de forma nenhuma.

Acho que deve ter outra coisa a ser alterada....

 

Tirei isto:

----------------

 

if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) { 
 if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) { 
 setText(); 
 info_mc.destAlpha = 100; 
 } else { 
 info_mc.destAlpha = 0; 
 } 
 } else { 
 info_mc.destAlpha = 0; 
 } 
 } else { 
 info_mc._alpha = 0; 
 info_mc.destAlpha = 0;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok então eu estava certo quanto a função onde faz mudar o texto :)

 

Como você pode ver ele faz um if else

if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) { 
 if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) { 
 setText(); 
 info_mc.destAlpha = 100; 
 } else { 
 info_mc.destAlpha = 0; 
 } 
 } else { 
 info_mc.destAlpha = 0; 
 } 
 } else { 
 info_mc._alpha = 0; 
 info_mc.destAlpha = 0;

Então o que você precisa fazer é remover todas essas opções ai e só deixar a que importa ;)

Qual é a que importa????? a que ele aparece horas rs

 

E onde que faz isso?

Aqui:

info_mc.destAlpha = 100;

 

Então no lugar desse if todo se deixa só isso ai ;)

 

E deve resolver seu problema.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Berseck , depois de muito tentar,......ainda não consegui fazer o que queria, ou seja fazer a legenda aparecer quando chamasse a imagem, mas

agora preciso de outra dica:

 

o menu com os thumbnails ficam estáticos e quando uma imagem maior é chamada o menu fica porcima da foto. Queria que o menu(menu_mc) ficasse atrelado ao movimento no eixo y da imagem.

Tem como?

 

Segue a AS de novo:


//
// INITIAL SETTINGS
//
slideShow = false;
if (slideShow) {
	bttnAutoPlay.gotoAndStop(2);
}
import mx.transitions.Tween;
import mx.transitions.easing.*;
menu_all._visible = false;
holder._alpha = 0;
destWidth = holder._width+border;
destHeight = holder._height+border;
// Set first gallery displayed by default
galleryID = 0;
// Set first image displayed by default
ID = 0;
// Set your document stage width and height here
stageW = 1230;
stageH = 620;
// Set spacing amount between thumbnail images
thumbSpace = 1;
// Set the maximum amount of thumbs to be displayed here. Scrolling will be enabled if total of thumbs is greater than default_maxThumbs
default_maxThumbs = 5;
// Set border amount here
border = 15;
menu_mc.bgX = menu_mc.bg._x;
// Set initial size of white bg here
destWidth = bg_mc.bg._width=300;
destHeight = bg_mc.bg._height=200;
// Alignment varibles
fullscreen_mcY = fullscreen_mc._y;
bgX = bg._x;
bgY = bg._y;
menu_mcX = menu_mc._x;
menu_mcY = menu_mc._y;
// Hides these movieclips initially
hover_mc._visible = false;
info_mc._alpha = 0;
info_mc.destAlpha = 0;
bttnNext._visible = true;
bttnPrev._visible = true;
//
// CSS STYLESHEET
//
var styles = new TextField.StyleSheet();
// Set hyperlink colour and decoration here
styles.setStyle("a:link", {color:'#00FFFF', textDecoration:'none'});
styles.setStyle("a:hover", {color:'#00FFFF', textDecoration:'underline'});
info_mc.txt.html = true;
info_mc.txt.styleSheet = styles;
//
// LARGE IMAGE TRANSITION
//
// You can use custom easing types such as: Back, Bounce, Elastic, Regular, Strong, None
var tweenAlpha:Tween = new Tween(holder, "_alpha", Strong.easeOut, 0, 100, 1, true);
tweenAlpha.stop();
var tweenAlphaPreloader:Tween = new Tween(preloader, "_alpha", Strong.easeOut, 100, 0, 1, true);
tweenAlphaPreloader.stop();
imageLoaded = function () {
	holder._alpha = 0;
	tweenAlpha.rewind();
	tweenAlpha.stop();
	currWidth = bg_mc.bg._width;
	currHeight = bg_mc.bg._height;
	destWidth = holder._width+border;
	destHeight = holder._height+border;
	// You can use custom easing types such as: Back, Bounce, Elastic, Regular, Strong, None
	var tweenWidth:Tween = new Tween(bg_mc.bg, "_width", Bounce.easeOut, currWidth, destWidth, 1, true);
	var tweenHeight:Tween = new Tween(bg_mc.bg, "_height", Bounce.easeOut, currHeight, destHeight, 1, true);
	tweenAlphaPreloader.start();
	tweenWidth["onMotionfinished"] = function () {
		if (tweenWidth.position == destWidth && tweenAlpha.position == 0) {
			tweenAlpha.start();
		}
	};
	// Check if autoplay is enabled
	if (slideShow) {
		clearInterval(_global.timeInterval);
		_global.timeInterval = setInterval(slideTimer, 3000);
	} else {
		clearInterval(_global.timeInterval);
	}
};
//
// AUTOPLAY FUNCTION
//
slideTimer = function () {
	trace('slideTimer');
	clearInterval(_global.timeInterval);
	if (slideShow) {
		ID += 1;
		if (ID == total) {
			ID = 0;
			galleryID += 1;
			if (galleryID == galleryTotal) {
				galleryID = 0;
			}
			buildGallery();
		}
		menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
		loadID();
	}
};
//
// ON STAGE RESIZE 
//
stageListener = new Object();
Stage.addListener(stageListener);
alignObjects = function () {
	// Align menu
	menu_mc._x = menu_mcX-(Stage.width-stageW)/2+(Stage.width-stageW)/2;
	menu_mc._y = menu_mcY+(Stage.height-stageH)/6;
	menu_mc.bg._x = menu_mc.bgX-(Stage.width-stageW)/2;
	menu_mc.bg._width = Stage.width;
	menu_all._y = Math.round(-(Stage.height-stageH)/2);
	menu_all._x = Math.round(-(Stage.width-stageW)/2+(Stage.width-menu_all._width)/2);
	// Align autoplay
	bttnAutoPlay._y = -(Stage.height-stageH)/2+Stage.height-26;
	bttnAutoPlay._x = -(Stage.width-stageW)/2+Stage.width/2-bttnAutoPlay._width/2;
};
stageListener.onresize = function() {
	alignObjects();
};
alignObjects();
//
// BUTTON FUNCTIONS 
//
bg_mc.bg.bttnNext.onRelease = function() {
	nextID();
	menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
};
bg_mc.bg.bttnNext.onRollOver = function() {
	bttnNext._visible = true;
};
bg_mc.bg.bttnNext.onRollOut = bg_mc.bg.bttnNext.ondragOut=function () { bttnNext._visible = true;
};;;;;;;;;
bg_mc.bg.bttnPrev.onRelease = function() {
	prevID();
	menu_mc.scroll_mc.thumb_mc["thumb"+ID].selectThumb();
};
bg_mc.bg.bttnPrev.onRollOver = function() {
	bttnPrev._visible = true;
};
bg_mc.bg.bttnPrev.onRollOut = bg_mc.bg.bttnPrev.ondragOut=function () { bttnPrev._visible = true;
};;;;;;;;;


info_bttn.bttn.onRollOver = function() {
	info_mc.destAlpha = 100;
};
info_bttn.bttn.onRollOut = info_bttn.bttn.ondragOut=function () { info_mc.destAlpha =100;
};;;
//
// AUTOPLAY BUTTON
//
bttnAutoPlay.bttn.onPress = function() {
	if (this._parent._currentframe == 1) {
		slideShow = true;
		this._parent.gotoAndStop(2);
		slideTimer();
	} else {
		slideShow = false;
		this._parent.gotoAndStop(1);
		clearInterval(_global.timeInterval);
	}
};
//
// LOAD ID FUNCTIONS
//
nextID = function () {
	if (ID<(total-1)) {
		ID++;
		loadID();
	}
};
prevID = function () {
	if (ID>0) {
		ID--;
		loadID();
	}
};
loadID = function () {
	tweenAlphaPreloader.stop();
	tweenAlphaPreloader.rewind();
	preloader._alpha = 100;
	tweenAlpha.rewind();
	tweenAlpha.stop();
	destAlpha = 100;
	holder._alpha = 100;
	info_mc._alpha = 100;
	info_mc.destAlpha = 100;
	menu_mc.hover.txt.text = Caption[ID];
	loadMovie(Large[ID], holder);
};
_global.thumbClick = function() {
	loadID();
};
//
// DISPLAY INFO TEXT
//
setText = function () {

	info_mc.txt.htmlText = Copy[ID];
	info_mc.txt._width = info_mc.bg._width-20;
	info_mc.txt._x = info_mc.bg._x+20;
	info_mc.txt._height = info_mc.txt.textHeight+10;
	info_mc._x = holder._x;
	//Altera a posição do texto legenda (-10)
	//
	info_mc._y = holder._y+holder._height-info_mc._height-10;
};
//
// ON IMAGE LOAD
//
alignPic = function () {
	holder._x = (stageW-holder._width)/2;
	holder._y = (stageH-holder._height-menu_mc._height)/2;
	bg_mc.bg._x = holder._x;
	bg_mc.bg._y = holder._y;
	bg_mc._x = holder._width/2;
	bg_mc._y = holder._height/2;
	bttnNext._y = holder._y+(holder._height-bttnNext._height)/2;
	bttnNext._x = bg_mc._width+(stageW-bg_mc._width)/2-bttnNext._width-border/2;
	bttnPrev._y = holder._y+(holder._height-bttnPrev._height)/2;
	bttnPrev._x = (stageW-bg_mc._width)/2+bttnPrev._width+border/2;
	preloader._x = holder._x+holder._width/2;
	preloader._y = holder._y+holder._height/2;
};
alignPic();
//
// BUILD GALLERY FUNCTION
//
buildGallery = function () {
	menu_all.destX = menu_all.header_mc._width+1+(menu_all.menu_mc._width+1)*galleryID;
	menu_all.doTween();
	ID = 0;
	destWidth = 0;
	destHeight = 0;
	//Remove previously created photos and thumbs
	for (j=0; j<currentTotal; j++) {
		menu_mc.scroll_mc.thumb_mc["thumb"+j].removeMovieClip();
	}
	total = xmlNode.childNodes[galleryID].childNodes.length;
	maxThumbs = default_maxThumbs;
	//Disable scrolling if too few thumbs
	if (maxThumbs>total) {
		maxThumbs = total;
	}
	// Sets destination width and height for each image 
	for (i=0; i<total; i++) {
		Thumb[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Thumb;
		Large[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Large;
		Caption[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Caption;
		Colour[i] = xmlNode.childNodes[galleryID].childNodes[i].attributes.Colour;
		
		
		
		
		Copy[i] = xmlNode.childNodes[galleryID].childNodes[i].childNodes[0].firstChild.nodeValue;
		
		
		
		
		//Build thumb menu
		menu_mc.scroll_mc.thumb_mc.thumb.duplicateMovieClip("thumb"+i, i);
		menu_mc.scroll_mc.thumb_mc["thumb"+i]._x = (menu_mc.scroll_mc.thumb_mc["thumb"+i]._width+thumbSpace)*i;
		loadMovie(Thumb[i], menu_mc.scroll_mc.thumb_mc["thumb"+i].holder);
		menu_mc.scroll_mc.thumb_mc["thumb"+i].ID = i;
		menu_mc.scroll_mc.mask_mc._width = ((menu_mc.scroll_mc.thumb_mc.thumb._width+thumbSpace)*maxThumbs)-thumbSpace;
		menu_mc.scroll_mc._x = Math.round(-(Stage.width-stageW)/2+Stage.width/2-menu_mc.scroll_mc.mask_mc._width/2);
		//Reset scroll menu to first image on gallery load
		menu_mc.scroll_mc.thumb_mc._x = 0;
		menu_mc.scroll_mc.destX = 0;
	}
	loadID();
	currentTotal = total;
};
//
// THUMBNAIL MENU AND PRELOADER SCRIPT
//
this.menu_mc.thumb_menu.destX = this.menu_mc.thumb_menu._x;
onEnterFrame = function () {
	// Align large image
	alignPic();
	this.menu_mc.thumb_menu._x += (this.menu_mc.thumb_menu.destX-this.menu_mc.thumb_menu._x)/3;
	//Info show and hide
	info_mc._alpha += (info_mc.destAlpha-info_mc._alpha)/3;
	header_mc._alpha = info_mc._alpha;
	loaded = holder.getBytesLoaded();
	filesize = holder.getBytesTotal();
	percentage = Math.round((loaded/filesize)*100);
	// Preloader script
	if (filesize == loaded && filesize>100) {
		preloader.left.half._rotation = 180;
		preloader.right.half._rotation = 180;
		if (bg_mc.hitTest(_root._xmouse, _root._ymouse, true) && holder._alpha>=100) {
			if (!bttnNext.hitTest(_root._xmouse, _root._ymouse, true) && !bttnPrev.hitTest(_root._xmouse, _root._ymouse, true)) {
				setText();
				info_mc.destAlpha = 100;
			} else {
				info_mc.destAlpha = 0;
			}
		} else {
			info_mc.destAlpha = 0;
		}
	} else {
		info_mc._alpha = 0;
		info_mc.destAlpha = 0;
		if (isNaN(percentage) or percentage == 0) {
			percentage = 0;
			preloader.left.half._rotation = 0;
			preloader.right.half._rotation = 0;
		} else if (percentage<=50 && percentage>0) {
			preloader.left.half._rotation = 0;
			preloader.right.half._rotation = (360/100)*percentage;
		} else if (percentage>50 && percentage<100) {
			preloader.left.half._rotation = (360/100)*(percentage-50);
			preloader.right.half._rotation = 180;
		}
	}
	preloader.percentageTxt = percentage;
};
//
// LOAD XML DATA
//
loadXML = function (loaded) {
	if (loaded) {
		xmlNode = this.firstChild;
		Name = [];
		Thumb = [];
		Large = [];
		Caption = [];
		Copy = [];
		galleryTotal = xmlNode.childNodes.length;
		menu_all.header_mc.headerName.text = xmlNode.attributes.Name;
		for (n=0; n<galleryTotal; n++) {
			menu_all.menu_mc.duplicateMovieClip("menu_mc"+n, n);
			menu_all["menu_mc"+n]._x = menu_all.header_mc._width+1+(menu_all.menu_mc._width+1)*n;
			menu_all["menu_mc"+n].txt_mc.categoryName.text = xmlNode.childNodes[n].attributes.Name;
			menu_all["menu_mc"+n].ID = n;
			alignObjects();
		}
		menu_all._visible = true;
		menu_all.menu_mc._visible = true;
	} else {
		trace("Error loading XML");
	}
};
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onload = loadXML;
xmlData.load("conteudo.xml");
stop();

Compartilhar este post


Link para o post
Compartilhar em outros sites

1 - Gostaria que você utiliza-se o BBCODE em seus códigos, para isso basta selecionar o código e clicar nas setinhas <> do menu onde você escreve seu post

 

Para isso você tem que fazer um swapDepths, pois atualmente o menu deve ta mais a frente do que as imagens. Se o menu foi criado na mão sugiro que você coloque ele dentro de um MC e altere o depth dele... para -1 ou -2 que deve resolver o problema

 

menu.swapDepth(numero);

 

Abraços

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.