Juninho_7D Postado Abril 3, 2010 Denunciar Share Postado Abril 3, 2010 (editado) Fala Pessoal!!! Blza?Estou com uma grandeeee dúvida no meu site.Não sou muito bom de programação e por isso não sei o que fazer.Vamos ao caso:Fiz um site totalmente em flash e nele chamo vários swf´s externos.Entre esses swf´s externos tenho uma galeria que traz imagens por um código XML.Quando abro o swf da galeria no explorer ou no flash..ela funciona normalmente.Mas quando tento abrir ela pelo link do site....ela não abre as imagens xml....Ela carrega a página...porém não cria as mini imagens e nem as maiores.Dando uma olhada nesse fórum...vi algumas pessoas recomendando fazer o seguinte código no inicio do swf..._lockroot = trueRealmente funcionou....o site passou a carregar esse swf por inteiro...PORÉMMM....quando eu abro essa página..não consigo abrir mais nenhuma...Ele pára no carregando nas outras páginas.O Meu site....carrega os links por meio deste código:stop();var pag="home.swf"for (i=1;i<=7;i++) { this["but"+i].onRollOver=function(){ this.gotoAndPlay("vai"); } this["but"+i].onRollOut=function(){ this.gotoAndPlay("volta"); } this["but"+i].onRelease=function(){ _root.conteudo.gotoAndPlay("vai"); if(this._name==but1"){ _root.pag = "home.swf" }//fim if if(this._name=="but2"){ _root.pag = "cardapio.swf" }//fim if if(this._name=="but3"){ _root.pag = "pedidos.swf" }//fim if if(this._name=="but4"){ _root.pag = "promocoes_infantil.swf"; }//fim if if(this._name=="but5"){ _root.pag = "decoracoes_infantil.swf" }//fim if if(this._name=="but6"){ _root.pag = "contato.swf" }//fim if if(this._name=="but7"){ _root.pag = "promocoes.swf" }//fim if }}e na transição que criei de páginas existe esse código:stop();//"home.swf"puxa.loadMovie(_root.pag);E o código do swf da galeria é esse:_lockroot = truestop();//variaveis da sequencia...var fotos:Array = new Array;//função de inicio do projeto...function init():Void { //carregando xml... var loadDados:XML = new XML(); loadDados.ignoreWhite = true; loadDados.onLoad = function(sucess) { if (sucess) { //primeiro nó: fotos; var f = this.firstChild.childNodes; //listando conteúdo do nó e inserindo no array de fotos for (var i = 0; i<f.length; i++) { var novaimg:Object = new Object(); //criando o objeto de cada foto novaimg.img_p = f.attributes.fp; novaimg.img_g = f.attributes.fg; fotos.push(novaimg); //inserindo objeto no array } //chamando função q faz a galeria... criaGaleria(); } }; //load no arquivo .xml loadDados.load("galerias/fotos.xml");}//função que cria a galeriafunction criaGaleria():Void { car._visible = 0; //preloader de imagens grande, usando MovieClipLoader... //fica livre para usar como quiser... var mvlIMG:MovieClipLoader = new MovieClipLoader(); var mvlOBJ:Object = new Object(); mvlOBJ.onLoadStart = function(){ car._visible = 1; } mvlOBJ.onLoadProgress = function(obj, bl, bt){ var p = (Math.round(bl/bt) * 100) //porcentagem carregada da imagem car.p.text = "Carregando... " + p + "%"; } mvlOBJ.onLoadComplete = function(){ car._visible = 0; } mvlIMG.addListener(mvlOBJ); // //criando sistema de galeria(quantidade de fotos, fotos por pagina, colunas, altura miniatura, largura, espacamento x, e y); _global.galeria1 = new Distribute(fotos.length, 8, 2, 80, 60, 4, 3); // var objGal1:Object = new Object(); objGal1.onDistStart = function() { //ação de inicio da distribuição das fotos... //verifica se o mc já está no palco, caso esteja, remove para nova página... if(_root.miniaturas){ //removendo miniaturas anteriores na troca de pagina... _root.miniaturas.removeMovieClip(); } //duplicando o mc conteiner q vai conter as miniaturas, para um novo que poder ser removido... _root.conteinerInicial.duplicateMovieClip("miniaturas", 1); //definindo onde o mcConteiner deve aparecer... miniaturas._x = conteinerInicial._x; // _x miniaturas._y = conteinerInicial._y; // _y //escondendo... miniaturas._visible = 0; }; // objGal1.onDistUpdate = function(info:Object) { //puxando da bliblioteca o mc com linkage miniatura, e já posicionando de arquivo com o _x e _y passados pelo var info... _root.miniaturas.attachMovie("miniatura", "fp_"+info.iObj, galeria1.nDepth(_root.miniaturas), {_x:info.x, _y:info.y}); //informando ou passando, para miniatura, qual é sua foto grande... _root.miniaturas["fp_"+info.iObj].img_g = fotos[info.index].img_g; //criando o movie clip alvo para receber a img pequena, dentro do mc Conteiner... _root.miniaturas["fp_"+info.iObj].createEmptyMovieClip("img_p", 1); //carregando thumb via loadMovie... _root.miniaturas["fp_"+info.iObj].img_p.loadMovie(fotos[info.index].img_p); //definindo ação de clique na miniatura, para ampliar... _root.miniaturas["fp_"+info.iObj].onRelease = function(){ //usando o obj mvlIMG, para carregar a imagem grande... mvlIMG.loadClip(this.img_g, img_grande); } }; objGal1.onDistEnd = function(info:Object) { //ação de distribuição completa, exibindo mc Conteiner, chamado de miniaturas... miniaturas._visible = 1; }; //definindo ao objeto galeria1, os objetos e eventos que deve utilizar... galeria1.addEventListener("onDistStart", objGal1); galeria1.addEventListener("onDistUpdate", objGal1); galeria1.addEventListener("onDistEnd", objGal1); // //montando paginação, pegase o nº de paginas e faz o paginador... //função responsável pelo click dos bts da paginação... function setPg(obj){ //restaurando todos bts, para o primeiro frame... for (i=0; i<galeria1.nPages; i++) { var mcPgAtual = this._parent["mcPg_" add i]; if(mcPgAtual != this) mcPgAtual.gotoAndStop(1); //todos voltam menos o atual... } //definindo o frame q deve mostrar... this.lastFrame = 3; //mostrando página solicitada... var iAtual:Number = int(this.pg.text); galeria1.showPage(iAtual); } for (i=0; i<galeria1.nPages; i++) { //ataxando ao mc vazio, paginacao, os bts de página... var mcPgAtual = paginacao.attachMovie("mcPg", "mcPg_" add i, i); mcPgAtual._x = (i*(mcPgAtual._width+3)); //posicionando bt no mc... mcPgAtual.pg.text = (i+1); //setando no bt, a pg dele... //definindo eventos e ações paga o bt da página... mcPgAtual.onRollOver = function(){ //pega o frame atual e armazena, caso o bt seja o bt de página clicada... this.lastFrame = this._currentframe; //ao passar porcima acende this.gotoAndStop(2); } mcPgAtual.onRollOut = function(){ this.gotoAndStop(this.lastFrame); } mcPgAtual.onRelease = setPg; } // //mostrando pagina 1 e setando o botão de pg 1... paginacao["mcPg_0].gotoAndStop(3); galeria1.showPage(1); }////iniciando por fim, a galeria...init();Gostaria de pedir por gentileza uma ajuda de vocês...realmente não sei o que fazer para corrigir...Abraço....e boa Páscoa pra vocês todos Editado Abril 15, 2010 por quintelab Removido Ajuda do Titulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Juninho_7D Postado Abril 15, 2010 Autor Denunciar Share Postado Abril 15, 2010 Pessoal....vou explicar o que está acontecendo agora...eu coloco o _lockroot = true; no inicio do SWF externo e ele agora carrega a galeria..Porém quanto tento clicar em outro link ele trava no carregando...parece que o _root dos botões está atrapalhando o carregamentoda galeria.POR FAVORRRRRRRR! Peço muito a ajuda de vocês....não tenho idéia do que está acontecendo! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Cardon Postado Abril 15, 2010 Denunciar Share Postado Abril 15, 2010 caracreio que quando você coloca o _lockrootele vai passar o root para o swf carregado, então se você for fazer uma página toda em flash isso não é recomendado.chame as instancias e variáveis dos swf carregados mais ou menos assim_root.movieQueCarregouSWF.instanciaDoAlgoDentroSWFexterno.functionQualquerOu seja, quando você criou o MovieClip que vai re ceber os swf's externos você teve que instancia-lo.Pois bem.Nos swf's externos construa as actions sempre colocando uma referencia ao SWF pai.ramificando:chamar instancia dentro de SWF externo(filho)_root.instanciaMoviePai.instanciaMovieFilhoSWF Pai:>_root>>MovieClip>>>MovieClip(SWF filho)>>>>... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Juninho_7D
Fala Pessoal!!! Blza?
Estou com uma grandeeee dúvida no meu site.
Não sou muito bom de programação e por isso não sei o que fazer.
Vamos ao caso:
Fiz um site totalmente em flash e nele chamo vários swf´s externos.
Entre esses swf´s externos tenho uma galeria que traz imagens por um código XML.
Quando abro o swf da galeria no explorer ou no flash..ela funciona normalmente.
Mas quando tento abrir ela pelo link do site....ela não abre as imagens xml....
Ela carrega a página...porém não cria as mini imagens e nem as maiores.
Dando uma olhada nesse fórum...vi algumas pessoas recomendando fazer o seguinte código no inicio do swf...
_lockroot = true
Realmente funcionou....o site passou a carregar esse swf por inteiro...PORÉMMM....quando eu abro essa página..não consigo abrir mais nenhuma...
Ele pára no carregando nas outras páginas.
O Meu site....carrega os links por meio deste código:
stop();
var pag="home.swf"
for (i=1;i<=7;i++) {
this["but"+i].onRollOver=function(){
this.gotoAndPlay("vai");
}
this["but"+i].onRollOut=function(){
this.gotoAndPlay("volta");
}
this["but"+i].onRelease=function(){
_root.conteudo.gotoAndPlay("vai");
if(this._name==but1"){
_root.pag = "home.swf"
}//fim if
if(this._name=="but2"){
_root.pag = "cardapio.swf"
}//fim if
if(this._name=="but3"){
_root.pag = "pedidos.swf"
}//fim if
if(this._name=="but4"){
_root.pag = "promocoes_infantil.swf";
}//fim if
if(this._name=="but5"){
_root.pag = "decoracoes_infantil.swf"
}//fim if
if(this._name=="but6"){
_root.pag = "contato.swf"
}//fim if
if(this._name=="but7"){
_root.pag = "promocoes.swf"
}//fim if
}
}
e na transição que criei de páginas existe esse código:
stop();
//"home.swf"
puxa.loadMovie(_root.pag);
E o código do swf da galeria é esse:
_lockroot = true
stop();
//variaveis da sequencia...
var fotos:Array = new Array;
//função de inicio do projeto...
function init():Void {
//carregando xml...
var loadDados:XML = new XML();
loadDados.ignoreWhite = true;
loadDados.onLoad = function(sucess) {
if (sucess) {
//primeiro nó: fotos;
var f = this.firstChild.childNodes;
//listando conteúdo do nó e inserindo no array de fotos
for (var i = 0; i<f.length; i++) {
var novaimg:Object = new Object(); //criando o objeto de cada foto
novaimg.img_p = f.attributes.fp;
novaimg.img_g = f.attributes.fg;
fotos.push(novaimg); //inserindo objeto no array
}
//chamando função q faz a galeria...
criaGaleria();
}
};
//load no arquivo .xml
loadDados.load("galerias/fotos.xml");
}
//função que cria a galeria
function criaGaleria():Void {
car._visible = 0;
//preloader de imagens grande, usando MovieClipLoader...
//fica livre para usar como quiser...
var mvlIMG:MovieClipLoader = new MovieClipLoader();
var mvlOBJ:Object = new Object();
mvlOBJ.onLoadStart = function(){
car._visible = 1;
}
mvlOBJ.onLoadProgress = function(obj, bl, bt){
var p = (Math.round(bl/bt) * 100) //porcentagem carregada da imagem
car.p.text = "Carregando... " + p + "%";
}
mvlOBJ.onLoadComplete = function(){
car._visible = 0;
}
mvlIMG.addListener(mvlOBJ);
//
//criando sistema de galeria(quantidade de fotos, fotos por pagina, colunas, altura miniatura, largura, espacamento x, e y);
_global.galeria1 = new Distribute(fotos.length, 8, 2, 80, 60, 4, 3);
//
var objGal1:Object = new Object();
objGal1.onDistStart = function() {
//ação de inicio da distribuição das fotos...
//verifica se o mc já está no palco, caso esteja, remove para nova página...
if(_root.miniaturas){
//removendo miniaturas anteriores na troca de pagina...
_root.miniaturas.removeMovieClip();
}
//duplicando o mc conteiner q vai conter as miniaturas, para um novo que poder ser removido...
_root.conteinerInicial.duplicateMovieClip("miniaturas", 1);
//definindo onde o mcConteiner deve aparecer...
miniaturas._x = conteinerInicial._x; // _x
miniaturas._y = conteinerInicial._y; // _y
//escondendo...
miniaturas._visible = 0;
};
//
objGal1.onDistUpdate = function(info:Object) {
//puxando da bliblioteca o mc com linkage miniatura, e já posicionando de arquivo com o _x e _y passados pelo var info...
_root.miniaturas.attachMovie("miniatura", "fp_"+info.iObj, galeria1.nDepth(_root.miniaturas), {_x:info.x, _y:info.y});
//informando ou passando, para miniatura, qual é sua foto grande...
_root.miniaturas["fp_"+info.iObj].img_g = fotos[info.index].img_g;
//criando o movie clip alvo para receber a img pequena, dentro do mc Conteiner...
_root.miniaturas["fp_"+info.iObj].createEmptyMovieClip("img_p", 1);
//carregando thumb via loadMovie...
_root.miniaturas["fp_"+info.iObj].img_p.loadMovie(fotos[info.index].img_p);
//definindo ação de clique na miniatura, para ampliar...
_root.miniaturas["fp_"+info.iObj].onRelease = function(){
//usando o obj mvlIMG, para carregar a imagem grande...
mvlIMG.loadClip(this.img_g, img_grande);
}
};
objGal1.onDistEnd = function(info:Object) {
//ação de distribuição completa, exibindo mc Conteiner, chamado de miniaturas...
miniaturas._visible = 1;
};
//definindo ao objeto galeria1, os objetos e eventos que deve utilizar...
galeria1.addEventListener("onDistStart", objGal1);
galeria1.addEventListener("onDistUpdate", objGal1);
galeria1.addEventListener("onDistEnd", objGal1);
//
//montando paginação, pegase o nº de paginas e faz o paginador...
//função responsável pelo click dos bts da paginação...
function setPg(obj){
//restaurando todos bts, para o primeiro frame...
for (i=0; i<galeria1.nPages; i++) {
var mcPgAtual = this._parent["mcPg_" add i];
if(mcPgAtual != this) mcPgAtual.gotoAndStop(1); //todos voltam menos o atual...
}
//definindo o frame q deve mostrar...
this.lastFrame = 3;
//mostrando página solicitada...
var iAtual:Number = int(this.pg.text);
galeria1.showPage(iAtual);
}
for (i=0; i<galeria1.nPages; i++) {
//ataxando ao mc vazio, paginacao, os bts de página...
var mcPgAtual = paginacao.attachMovie("mcPg", "mcPg_" add i, i);
mcPgAtual._x = (i*(mcPgAtual._width+3)); //posicionando bt no mc...
mcPgAtual.pg.text = (i+1); //setando no bt, a pg dele...
//definindo eventos e ações paga o bt da página...
mcPgAtual.onRollOver = function(){
//pega o frame atual e armazena, caso o bt seja o bt de página clicada...
this.lastFrame = this._currentframe;
//ao passar porcima acende
this.gotoAndStop(2);
}
mcPgAtual.onRollOut = function(){
this.gotoAndStop(this.lastFrame);
}
mcPgAtual.onRelease = setPg;
}
//
//mostrando pagina 1 e setando o botão de pg 1...
paginacao["mcPg_0].gotoAndStop(3);
galeria1.showPage(1);
}
//
//iniciando por fim, a galeria...
init();
Gostaria de pedir por gentileza uma ajuda de vocês...realmente não sei o que fazer para corrigir...
Abraço....e boa Páscoa pra vocês todos
Editado por quintelabRemovido Ajuda do Titulo
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.