Ir para conteúdo

POWERED BY:

Arquivado

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

ChidaWEB

Problema Estranho com ActionScript

Recommended Posts

galera, por gentileza, acessem este site http://arqinove.chidaweb.com.br

este é um site de um cliente meu, estou fazendo os testes finais do site, porém, estou tendo um sério problema, que está me deixando maluco.

 

bom, na parte de Atelier, tem 6 sublinks, bom, kd sublink, chama 1 arquivo .swf diferente.

porém, kd swf, a única coisa que muda entre eles é o arquivo XML que é chamado, e o nome do mesmo, é claro.

mas, cada sublink esta dando um problema diferente.

Ja mudei os nomes no XML, fiz várias coisas a respeito da parte de HTML, e nada muda.

Ja vi e revi o código AS, mas todos são iguais, e eu não entendo por que cada um está com um problema diferente.

 

assim:

- na parte Atelier -> Residencial, uns linsk funcionam, mas uns quando clica, trava o navegador, como se o script repetisse infinitas vezes, tornando-o longo d+, travando o navegador.

- na parte Atelier -> Comercial, todos os links funcionam perfeitamente, porém, quando clico nas miniaturas, nada acontece, em todos os links.

- na parte Atelier -> Arquitetonicos, o link "Res. Village das Nações", as imagens que aparecem após clicar na miniatura, aparecem de outro projeto.

esses são alguns dos problemas...

mas é só nessa área que estão bugando, ta cheio de bugs, e não estou entendendo, é o porque, que cada um está com um problema diferente, sendo que não muda nada no seu código AS.

 

Código AS:

stop();
this._lockroot = true;
//------ VARs MovieClip Projetos -----------
var projetos:MovieClip = _root.projetos;
var bt_sobe:MovieClip = projetos.bt_sobe;
var bt_desce:MovieClip = projetos.bt_desce;
var mask_lista:MovieClip = projetos.mask_lista;
var lista:MovieClip = projetos.lista;
var back_lista:MovieClip = lista.back_lista;
var bt_lista:MovieClip = lista.bt_lista;
//-------------------------------------------
// INÍCIO
mask_lista._alpha = 0;
bt_lista._alpha = 0;
back_lista._alpha = 0;

import flash.filters.GlowFilter;
var glow:GlowFilter = new GlowFilter(0x666666, 100, 2.5, 2.5, 1.5, 3, false, false);
var glowArray:Array = new Array();
glowArray.push(glow);

System.useCodepage = false;
var GaleriaXML:XML = new XML();
GaleriaXML.load("residencial.xml?nocache="+getTimer());
GaleriaXML.ignoreWhite = true;

GaleriaXML.onLoad = function(){
	Projetos = GaleriaXML.firstChild;
	NoProjetos = Projetos.childNodes.length;
	txtPosX = 20;
	txtPosY = 40;
	for(i=0; i<NoProjetos; i++){
		Projeto = Projetos.childNodes[i];
		IDProjeto = Projeto.nodeName;
		NomeProjeto = Projeto.attributes.nome;
		LocalProjeto = Projeto.attributes.local;
		AnoProjeto = Projeto.attributes.ano;
		txtPosY += 20;
		hDepth = lista.getNextHighestDepth()+1;
		var myTF:TextField = lista.createTextField("nome["+i+"]", hDepth, txtPosX, txtPosY, 600, 20);
		myTF.selectable = false;
		myTF.html = true;
		myTF.textColor = 0x666666;
		myTF.type = "static";
		myTF.htmlText = "<font face=\"Verdana\" size=\"11px\"><b>Projeto:</b> "+NomeProjeto+" / <b>Local:</b> "+LocalProjeto+" / <b>Ano:</b> "+AnoProjeto+"</font>";
		lista.setMask(mask_lista);
		butMC("bt"+i,txtPosX,txtPosY,IDProjeto);
	}
	bts_lista();
}

function butMC(nomeBT,posx,posy,id){
	var nomeBT:MovieClip = bt_lista.duplicateMovieClip(nomeBT, lista.getNextHighestDepth());
	nomeBT._alpha = 0;
	nomeBT._x = posx;
	nomeBT._y = posy;
	
	nomeBT.onRelease = function(){
		var idP:String = id;
		callFotos(idP);
	}
	
	nomeBT.onRollOver = function(){
		back_lista._alpha = 100;
		back_lista._x = posx;
		back_lista._y = posy;
	}
	
	nomeBT.onRollOut = function(){
		back_lista._alpha = 0;
	}
}

function bts_lista(){
	bt_sobe.onRollOver = function(){
		tamLISTA = lista._height;
		if(tamLISTA > 270){
			sobra = tamLISTA - 270;
			l = 0;
			onEnterFrame = function(){
				if(sobra >= l){
					pos_y = lista._y;
					if(pos_y != 0){
						lista._y += 5;
					}
				}
				l += 5;
			}
		}
	}
	bt_desce.onRollOver = function(){
		tamLISTA = lista._height;
		if(tamLISTA > 270){
			sobra = tamLISTA - 270;
			l = 0;
			onEnterFrame = function(){
				if(sobra >= l){
					pos_y = lista._y;
					if(pos_y >= -sobra){
						lista._y -= 5;
					}
				}
				l += 5;
			}
		}
	}
	bt_sobe.onRollOut = function(){
		onEnterFrame = function(){
			lista._y;
		}
	}
	bt_desce.onRollOut = function(){
		onEnterFrame = function(){
			lista._y;
		}
	}
}

//------ VARs MovieClip Fotos -----------
var fotos:MovieClip = _root.fotos;
var bt_direita:MovieClip =  fotos.bt_direita;
var bt_esquerda:MovieClip =  fotos.bt_esquerda;
var bt_voltar:MovieClip =  fotos.bt_voltar;
//----------------------------------------
// INÍCIO
fotos._alpha = 0;
fotos._x = 690;
	
function callFotos(id){
	fotos._x = 0;
	a = 0;
	onEnterFrame = function(){
		if(a <= 100){
			projetos._alpha -= 10;
			fotos._alpha += 10;
			if(a == 100){
				projetos._x = 690;
			}
		}
		a += 10;
	}
	//------------------------------------------------------
	criaCampos();
	btsFotos();
	for(i=0; i<NoProjetos; i++){
		Projeto = Projetos.childNodes[i];
		NomeProjeto = Projeto.nodeName;
		NoFotos = Projeto.childNodes.length;
		if(id == NomeProjeto){
			var nPro:String = Projeto.attributes.nome;
			var lPro:String = Projeto.attributes.local;
			var aPro:String = Projeto.attributes.ano;
			var cPro:String = Projeto.attributes.comentario;
			var video:String = Projeto.attributes.linkVideo;
			_root.fotos.createEmptyMovieClip('vid', _root.fotos.getNextHighestDepth());
			_root.fotos.vid.beginFill(0x000000, 0);
			_root.fotos.vid.lineTo(0,0);
			_root.fotos.vid.lineTo(0,59);
			_root.fotos.vid.lineTo(70,59);
			_root.fotos.vid.lineTo(70,0);
			_root.fotos.vid.endFill();
			_root.fotos.vid._x = 57;
			_root.fotos.vid._y = 227;
			if(video != undefined){
				_root.fotos.vid.onRelease = function(){
					getURL(video, "_blank");
				}
			}
			callTexts(nPro,lPro,aPro,cPro);
			for(n=0;n<NoFotos;n++){
				callMinis();
				maskMini();
			}
		}
	}
}

function criaCampos(){
	var anoPro:TextField = fotos.createTextField("ano_projeto", fotos.getNextHighestDepth()+100000, 53, 76, 65, 17);
	anoPro.selectable = false;
	anoPro.html = true;
	anoPro.textColor = 0x666666;
	anoPro.type = "static";
	var nomPro:TextField = fotos.createTextField("nome_projeto", fotos.getNextHighestDepth()+100001, 6, 32, 210, 17);
	nomPro.selectable = false;
	nomPro.html = true;
	nomPro.textColor = 0x666666;
	nomPro.type = "static";
	var locPro:TextField = fotos.createTextField("local_projeto", fotos.getNextHighestDepth()+100002, 59, 58, 157, 17);
	locPro.selectable = false;
	locPro.html = true;
	locPro.textColor = 0x666666;
	locPro.type = "static";
	var comPro:TextField = fotos.createTextField("comentarios", fotos.getNextHighestDepth()+100003, 17, 94, 190, 68);
	comPro.selectable = false;
	comPro.html = true;
	comPro.textColor = 0x666666;
	comPro.type = "static";
	comPro.wordWrap = true;
}

function callTexts(nome,local,ano,coment){
	fotos.nome_projeto.htmlText = "<p align='center'><font face='Verdana' size='11'><b>"+nome.toUpperCase()+"</b></font></p>";
	fotos.local_projeto.htmlText = "<font face='Verdana' size='11'>"+local+"</font>";
	fotos.ano_projeto.htmlText = "<font face='Verdana' size='11'>"+ano+"</font>";
	fotos.comentarios.htmlText = "<font face='Verdana' size='11'><b>Comentário:</b> "+coment+"</font>";
}

function callMinis(){
	var miniaturas:MovieClip = fotos.createEmptyMovieClip("miniaturas", fotos.getNextHighestDepth());
	miniaturas._x = 225;
	miniaturas._y = 265;
	
	var MCL:MovieClipLoader = new MovieClipLoader();
	var listener:Object = new Object();
	MCL.addListener(listener);
	miniW = 0;
	for (i=0; i<NoFotos; i++) {
		miniFoto = Projeto.childNodes[i].attributes.mini;
		miniWidth = Projeto.childNodes[i].attributes.miniW;
		miniHeight = Projeto.childNodes[i].attributes.miniH;
		
		var miniMc:MovieClip = miniaturas.createEmptyMovieClip(i, miniaturas.getNextHighestDepth());
		var w:Number = parseInt(miniWidth)+8;
		miniMc._x = miniW;
		miniW += parseInt(miniWidth) +8;
		miniMc.filters = glowArray;
		MCL.loadClip(miniFoto,miniMc);
		
		listener.onLoadComplete=function(miniMc:MovieClip){
			miniMc.onRelease=function(){
				callFullImage(miniMc._name);
			}
		}
	}
}

function callFullImage(n) {
	fotoFull = Projeto.childNodes[n].attributes.med;
	fotoW = parseInt(Projeto.childNodes[n].attributes.medW);
	fotoH = parseInt(Projeto.childNodes[n].attributes.medH);
	fotoLeg = Projeto.childNodes[n].attributes.leg;
	fotoOrg = Projeto.childNodes[n].attributes.org;
	var fullImage_mc:MovieClip = fotos.createEmptyMovieClip("fullImage_mc",fotos.getNextHighestDepth());
	fullImage_mc._x = 221;
	fullImage_mc._y = 11;
	fullImage_mc.filters = glowArray;
	var mcLeg:MovieClip = fotos.createEmptyMovieClip('mcLeg', fotos.getNextHighestDepth());
	var Leg:TextField = mcLeg.createTextField('legenda', fotos.getNextHighestDepth(), 0, 0, 200, 20);
	Leg.autoSize = true;
	Leg.backgroundColor = 0xCCCCCC;
	Leg.textColor = 0x333333;
	Leg.selectable = false;
	Leg.html = true;
	Leg.border = true;
	Leg.borderColor = 0xCCCCCC;
	
	var fullClipLoader:MovieClipLoader = new MovieClipLoader();
	var fullListener:Object = new Object();
	fullClipLoader.loadClip(fotoFull,fullImage_mc);
	fullClipLoader.addListener(fullListener);
	fullListener.onLoadComplete = function(fullImage_mc:MovieClip){
		fullImage_mc.onRelease = function(){
			Lightbox([fotoOrg],[fotoLeg]);
		}
		fullImage_mc.onRollOver = function(){
			if(fotoLeg != undefined){
				onEnterFrame = function(){
					mcLeg._x = _root._xmouse+15;
					mcLeg._y = _root._ymouse+20;
				}
				Leg.htmlText = "<font face='Tahoma' size='9'><b>"+fotoLeg+"</b></font>";
				Leg.background = true;
			}
		}
		fullImage_mc.onRollOut = function(){
			onEnterFrame = function(){
				Leg.background = false;
				Leg.border = false;
				Leg.htmlText = "";
			}
		}
	}
	fullListener.onLoadInit = function(fullImage_mc:MovieClip){	
			fullImage_mc._x = (420 - fotoW)/2+221;
			fullImage_mc._y = (235 - fotoH)/2+11;
	}
}

function maskMini(){
	var miniMASK:MovieClip = _root.fotos.createEmptyMovieClip("miniMASK", miniaturas.getDepth()+100000)
	miniMASK.beginFill(0x666666, 100);
	miniMASK.lineTo(0,0);
	miniMASK.lineTo(0,54);
	miniMASK.lineTo(415,54);
	miniMASK.lineTo(415,0);
	miniMASK.endFill();
	miniMASK._x = 222;
	miniMASK._y = 263;
	_root.fotos.miniaturas.setMask(miniMASK);
}

function btsFotos(){
	bt_esquerda.onRollOver = function(){
		tamFOTOS = _root.fotos.miniaturas._width;
		if(tamFOTOS > 415){
			sobra = tamFOTOS - 415;
			l = 0;
			onEnterFrame = function(){
				if(sobra >= l){
					pos_x =_root.fotos. miniaturas._x;
					if(pos_x != 225 or pos_x < 225){
						_root.fotos.miniaturas._x += 5;
					}
				}
				l += 5;
			}
		}
	}
	bt_direita.onRollOver = function(){
		tamFOTOS = _root.fotos.miniaturas._width;
		if(tamFOTOS > 415){
			sobra = tamFOTOS - 415;
			l = 0;
			onEnterFrame = function(){
				if(sobra >= l){
					pos_x = _root.fotos.miniaturas._x;
					if(pos_x >= (sobra-222)*-1){
						_root.fotos.miniaturas._x -= 5;
					}
				}
				l += 5;
			}
		}
	}
	bt_esquerda.onRollOut = function(){
		onEnterFrame = function(){
			stop();
		}
	}
	bt_direita.onRollOut = function(){
		onEnterFrame = function(){
			stop();
		}
	}
	bt_voltar.onRelease = function(){
		projetos._x = 0;
		i = 0;
		onEnterFrame = function(){
			if(i <= 100){
				projetos._alpha += 10;
				fotos._alpha -= 10;
				if(i == 100){
					fotos._x = 690;
					_root.fotos.fullImage_mc.unloadMovie();
					_root.fotos.miniaturas.removeMovieClip();
					_root.fotos.miniMASK.removeMovieClip();
					_root.fotos.mcLeg.removeMovieClip();
				}
			}
			i += 10;
		}
	}
}

function Lightbox(src, title)
{
    function addSlashes(str)
    {
        return ("\'" + escape(str) + "\'");
    } // End of the function
    if (typeof(src) == "string")
    {
        src = [src];
    } // end if
    if (typeof(title) == "string")
    {
        title = [title];
    } // end if
    if (typeof(title) == "undefined")
    {
        title = [];
    } // end if
    if (flash.external.ExternalInterface && flash.external.ExternalInterface.available)
    {
        flash.external.ExternalInterface.call("Lightbox.start", src, title);
    }
    else
    {
        for (var _loc1 = 0; _loc1 < src.length; ++_loc1)
        {
            src[_loc1] = addSlashes(src[_loc1]);
        } // end of for
        for (var _loc1 = 0; _loc1 < title.length; ++_loc1)
        {
            title[_loc1] = addSlashes(title[_loc1]);
        } // end of for
        getURL("java script:Lightbox.start([" + src.join(",") + "],[" + title.join(",") + "]);void(0);", "");
    } // end else if
} // End of the function

Exemplo de um dos XMLs:

<comercial>
	<i0 nome="Loja de motos" local="Camboriu - SC" ano="2009" linkVideo="" comentario="">
		<foto0 org='./imagens/projetos/474cbd73ceff2c42bd682a6e6701bdf8.jpg' mini='./imagens/projetos/mini/474cbd73ceff2c42bd682a6e6701bdf8.jpg' med='./imagens/projetos/med/474cbd73ceff2c42bd682a6e6701bdf8.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto0>
		<foto1 org='./imagens/projetos/2b957273d9b0272ca5cc96c953984326.jpg' mini='./imagens/projetos/mini/2b957273d9b0272ca5cc96c953984326.jpg' med='./imagens/projetos/med/2b957273d9b0272ca5cc96c953984326.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto1>
		<foto2 org='./imagens/projetos/f49804f58d59e5983cf730fdb15f094f.jpg' mini='./imagens/projetos/mini/f49804f58d59e5983cf730fdb15f094f.jpg' med='./imagens/projetos/med/f49804f58d59e5983cf730fdb15f094f.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto2>
		<foto3 org='./imagens/projetos/8cc620a820acc2455d3475fbd98b9d71.jpg' mini='./imagens/projetos/mini/8cc620a820acc2455d3475fbd98b9d71.jpg' med='./imagens/projetos/med/8cc620a820acc2455d3475fbd98b9d71.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto3>
	</i0>
	<i1 nome="Loja de lingerie" local="Tijucas - SC" ano="2009" linkVideo="" comentario="">
		<foto0 org='./imagens/projetos/55c47d4e567ad39b68a37fb8755d1418.jpg' mini='./imagens/projetos/mini/55c47d4e567ad39b68a37fb8755d1418.jpg' med='./imagens/projetos/med/55c47d4e567ad39b68a37fb8755d1418.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto0>
		<foto1 org='./imagens/projetos/9945e0f8d11415384f9341ac88ed8129.jpg' mini='./imagens/projetos/mini/9945e0f8d11415384f9341ac88ed8129.jpg' med='./imagens/projetos/med/9945e0f8d11415384f9341ac88ed8129.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto1>
	</i1>
	<i2 nome="Imobiliaria" local="Picarras - SC" ano="2009" linkVideo="" comentario="">
		<foto0 org='./imagens/projetos/9b4a7f80f75fca12a8b00305011e30cb.jpg' mini='./imagens/projetos/mini/9b4a7f80f75fca12a8b00305011e30cb.jpg' med='./imagens/projetos/med/9b4a7f80f75fca12a8b00305011e30cb.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto0>
		<foto1 org='./imagens/projetos/0ee41fa870ad45efdaf6c0cb0991c177.jpg' mini='./imagens/projetos/mini/0ee41fa870ad45efdaf6c0cb0991c177.jpg' med='./imagens/projetos/med/0ee41fa870ad45efdaf6c0cb0991c177.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto1>
		<foto2 org='./imagens/projetos/f9b36e1d7480fe8f30a8f179f2730cb3.jpg' mini='./imagens/projetos/mini/f9b36e1d7480fe8f30a8f179f2730cb3.jpg' med='./imagens/projetos/med/f9b36e1d7480fe8f30a8f179f2730cb3.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto2>
	</i2>
	<i3 nome="Izas coiffeurs" local="Balneario Camboriu - SC" ano="2009" linkVideo="" comentario="">
		<foto0 org='./imagens/projetos/e189a690ca773c9fc9f13cd2d4f3a54d.jpg' mini='./imagens/projetos/mini/e189a690ca773c9fc9f13cd2d4f3a54d.jpg' med='./imagens/projetos/med/e189a690ca773c9fc9f13cd2d4f3a54d.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto0>
		<foto1 org='./imagens/projetos/9a5018da6302d14944234fab99370f44.jpg' mini='./imagens/projetos/mini/9a5018da6302d14944234fab99370f44.jpg' med='./imagens/projetos/med/9a5018da6302d14944234fab99370f44.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto1>
		<foto2 org='./imagens/projetos/d23b0ff02a9df953dd95a9cedcfeb3bb.jpg' mini='./imagens/projetos/mini/d23b0ff02a9df953dd95a9cedcfeb3bb.jpg' med='./imagens/projetos/med/d23b0ff02a9df953dd95a9cedcfeb3bb.jpg' miniW='75' miniH='39' medW='420' medH='221' leg=""></foto2>
		<foto3 org='./imagens/projetos/0d58f93bca4a3bd243c1d5dec56d52a2.jpg' mini='./imagens/projetos/mini/0d58f93bca4a3bd243c1d5dec56d52a2.jpg' med='./imagens/projetos/med/0d58f93bca4a3bd243c1d5dec56d52a2.jpg' miniW='71' miniH='48' medW='346' medH='235' leg=""></foto3>
	</i3>
	<i4 nome="acsc" local="iohoih" ano="123" linkVideo="" comentario="">
	</i4>
	<i5 nome="hfyjgukhuk" local="guhkhi" ano="6765" linkVideo="" comentario="">
	</i5>
</interiores>

desde já, agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se o AS usado para carregar os arquivos XML é sempre o mesmo, e alguns funcionam, o problema deve estar nos próprios XML. Principalmente pelo fato das imagens terem nomes humanamente incompreensíveis.

 

Verificar se não há nenhuma tag em aberto também.

 

E não leve a mal minha opinião, mas achei o sistema do site bem simples para ter um código tão grande e complicado. Intermináveis for's chamando funções que também executam for's deixam certamente o brownser lento.

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.