Ir para conteúdo

Arquivado

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

TeixeiraRamos

chamar pela combobox swf ou uma .jpg tem que mudar código

Recommended Posts

Estou uso este código para chamar um arquivo swf pela combobox é funciona perfeitamente. Mas tenho que chamar ao invés de um arquivo swf uma imagem .jpg tem que mudar alguma coisa?

O código esse:

 

//Popula o combobox com os textos
licao_cb.addItem({data:0, label:"Selecione"});
licao_cb.addItem({data:1, label:"Clile"});
licao_cb.addItem({data:2, label:"Portugal"});


//Cria listener do combobox
var cb_listener:Object = new Object();
cb_listener.change = function(e:Object):Void{
	var selecionado_obj:Object = e.target.selectedItem;
 	switch(selecionado_obj.data){
		case 0: licao_sp.contentPath =""; break;
		case 1: licao_sp.contentPath =  "Clile.jpg"; break;
		case 2: licao_sp.contentPath =  "Portugal.jpg"; break;
	
	
	}
	
}
licao_cb.addEventListener("change", cb_listener);

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vale essa postagem

 

 

 

 

 

Alterei para esse texto: Com o código abaixo chamo pelo combobox arquivos swf ou imagem jpg (jpg na mesma pasta) e mandando "rodar" funciona perfeitamente. Porém ao colocar em uma página HTML, ASP dentro de uma "div" não funciona. Não indica erro simplesmente ao clicar em um item do combobox nada acontece.

 

//Popula o combobox com os textos
licao_cb.addItem({data:0, label:"Selecione"});
licao_cb.addItem({data:1, label:"Clile"});
licao_cb.addItem({data:2, label:"Portugal"});


//Cria listener do combobox
var cb_listener:Object = new Object();
cb_listener.change = function(e:Object):Void{
	var selecionado_obj:Object = e.target.selectedItem;
 	switch(selecionado_obj.data){
		case 0: licao_sp.contentPath =""; break;
		case 1: licao_sp.contentPath =  "Clile.jpg"; break;
		case 2: licao_sp.contentPath =  "Portugal.jpg"; break;
	
	
	}
	
}
licao_cb.addEventListener("change", cb_listener);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salve, salve amigo,

Por favor não repare o blog é realmente para testar.

Do lado direito, no final dessa página http://www.informacaoteixeira.com.br/ clicando em Teste para forum imasters

vai abrir uma página com o arquivo swf que não funciona. O arquivo que á chamado está também no servidor na mesma pasta "images". Aqui no meu computador, fora da página HTML , "local" ele abre e funciona normalmente, ou seja, dois cliques no arquivo swf abre normalmente, Se colocar dentro da HTML não funciona. Tenho dezenas de flash no meu blog e todos funcionam dentro das páginas "asp", "html" só esse que não. Já tentei colocar o caminho no actionscript e não funcionou. Será que estou colocando errado o caminho? Mas se fosse o caminho não abriria "local". Correto?

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, ao acessar o swf diretamente pelo navegador, está tudo ok então, presume-se que o problema é com o "embed/js" no html. Eu não gosto de utilizar esse javascript gerado pelo Flash e sim trabalhar com o SWFObject - Bom, preferências a parte, a sugestão então é adicionar mais um parâmetro como abaixo:

<param name="allowScriptAccess" value="always" />

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não funcionou mesmo colocando o parâmetro sugerido.

Por favor, observe no mesmo link coloquei um outro arquivo swf e funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos por partes:

- No HTML você adicionou o parâmetro dentro das tags <noscript> que é o caso do JS estar desabilitado no navegador, deverá acrescentar também no trecho onde a opção do JS esteja ativa. Reveja a sugestão de utilizar o SWFObject conforme sugerido anteriormente;

- No Flash ao publicar seu swf, verifique as configurações de segurança e habilite a opção de "acesso somente no servidor";

- Você consegue acessar a imagem direto do navegador (endereço completo)? Caso positivo, tente utilizar esse endereço completo no Flash ao indicar o caminho das imagens.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tudo bem, mas se estivesse desabilitado o outro arquivo flash iria funcionar? Coloquei um outro arquivo swf e funciona dentro da mesma página.

Vou tentar novamente mas não deu para entender "...deverá acrescentar também no trecho onde a opção do JS esteja ativa...".

Com relação a sugestão (SWFObject) já fui lá de imediato meu irmão mas a principio o danado do inglês me deixa meio perdido. Traduzi e entendi que tem baixar um arquivo para criar.... Fiquei bolado mesmo.

 

Com relação ao seu comentário:

 

"Você consegue acessar a imagem direto do navegador (endereço completo)? Caso positivo, tente utilizar esse endereço completo no Flash ao indicar o caminho das imagens."

 

Embora esteja na pasta de images não estou acessando uma imagem. Estou acessando um arquivo swf.

e não tem caminho no actisonscript:

Veja aqui:

//Popula o combobox com os textos
licao_cb.addItem({data:0, label:"Selecione"});
licao_cb.addItem({data:1, label:"CE4UJU - Clile"});


//Cria listener do combobox
var cb_listener:Object = new Object();
cb_listener.change = function(e:Object):Void{
	var selecionado_obj:Object = e.target.selectedItem;
 	switch(selecionado_obj.data){
		case 0: licao_sp.contentPath =""; break;
		case 1: licao_sp.contentPath =  "cartao_CE4UJU.swf"; break;
	}
	
}
licao_cb.addEventListener("change", cb_listener);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Calma amigo, muita calma...

Não é imagem e sim outro swf? Tudo bem mas a idéia é a mesma para o caminho/endereço completo:

http: // www.informacaoteixeira.com.br/ images/ cartao_CE4UJU.swf

Insira esse caminho absoluto diretamente no Flash (ActionScript) lá no "case 1" onde está o caminho relativo do arquivo.

 

Outra: Já alterou as configurações de segurança na hora de exportar no Flash como sugerido?

 

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

 

Com relação ao JS no seu HTML procure entender: Você tem duas situações para carregar o mesmo objeto swf, uma caso o JS do navegador do usuário esteja habilitado como abaixo:

<script type="text/javascript">

AC_FL........blablabla

</script>

E outra situação caso js desabilitado:

<noscript>

<object..........blablabla

</noscript>

Em resumo as duas situações tem a mesma função (carregar o mesmo objeto swf mas com métodos diferentes) mas que vai funcionar de acordo com o navegador do user, uma ou outra e não as duas juntas. Assim o parâmetro que sugeri anteriormente deverá ser inserido nas duas situações.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe alguma coisa.

Procedi conforme abaixo

 

Insira esse caminho absoluto diretamente no Flash (ActionScript) lá no "case 1" onde está o caminho relativo do arquivo.

 

Inclui no "case 1"

//Popula o combobox com os textos
licao_cb.addItem({data:0, label:"Selecione"});
licao_cb.addItem({data:1, label:"CE4UJU - Clile"});


//Cria listener do combobox
var cb_listener:Object = new Object();
cb_listener.change = function(e:Object):Void{
	var selecionado_obj:Object = e.target.selectedItem;
 	switch(selecionado_obj.data){
		case 0: licao_sp.contentPath =""; break;
		case 1: licao_sp.contentPath =  "http: // www.informacaoteixeira.com.br/images/cartao_CE4UJU.swf"; break;
	}
	
}
licao_cb.addEventListener("change", cb_listener);

 

Outra: Já alterou as configurações de segurança na hora de exportar no Flash como sugerido?

 

Alterei para: Access network only

 

Continua não abrindo na página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só um detalhe, eu postei como exemplo o endereço do swf quebrado com espaços para não carregar esse arquivo aqui no post em vez de mostrar a URL assim, não copie e cole simplesmente, no seu ActionScript remova os espaços da URL se ainda não o fez.

 

Também não notei a inclusão do parâmetro sugerido no seu JS/HTML.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou após a retirada dos espaço da URL. Foi falta de atenção da minha parte mesmo.
Por favor, ainda não entendi quando você informa:

Também não notei a inclusão do parâmetro sugerido no seu JS/HTML.



Só indiquei aqui o que você sugeriu:

 <script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','910','height','600','src','images/QSLGaleria','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','images/QSLGaleria' ); //end AC code
  </script>
  <noscript>
  <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="910" height="600">
    <param name="movie" value="../images/QSLGaleria.swf" />
    <param name="quality" value="high" />
    <param name="allowScriptAccess" value="always" />
    <embed src="../images/QSLGaleria.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="910" height="600"></embed>
  </object>
  </noscript>

 


Acredito que chamar uma imagem "jpg" seria mais rápido. No servidor as imagens ficam na pasta com o nome "images". Com esse mesmo código posso chamar uma "jpg" não tenho ideia como ficaria o caminho?

Vou aguardar a sua informação para retirar o link.
Muito obrigado e desculpe por tudo.
Att

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem o que desculpar amigo o importante é que está conseguindo resolver o problema.

Dá mesma forma que você está carregando um arquivo swf poderá também carregar um jpg, basta informar o endereço deste. Lá no seu ActionScript (case 1) onde digita o caminho do swf, altere para o endereço do jpg. Para ter certeza que o endereço está correto, digite o mesmo no navegador e veja se abre o arquivo.

 

No js do HTML o parâmetro que sugeri não foi necessário sabendo agora que o erro era no endereço do arquivo...

Se ainda não conseguiu entender vou dar um exemplo para você testar, uma vez que já expliquei a funcionalidade disso anteriormente.

Crie uma página HTML simples e insira os códigos abaixo:

<script type="text/javascript">
  alert('O JavaScript está habilitado neste navegador!');
</script>

<noscript>
  <p>O JavaScript está DESABILITADO neste navegador!</p>
</noscript>

Salve e abra essa página no seu navegador. Ao abrir, será mostrado uma janela de alerta informando que seu js está habilitado ou seja, o conteúdo que está dentro da tag <script>.

Agora desabilite o js do seu navegador e carregue a página novamente, o resultado será o que está dentro das tags <noscript>.

Para desabilitar o js no Firefox, clique no menu superior > Opções > Conteúdo > Desmarque a opção Permitir JavaScript.

Não esqueça de habilitar novamente após o teste.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado mesmo pela atenção.
Tudo entendido. Mais uma vez aprendi graças o forum.imasters

Estou retirando o link mas se alguém necessitar de alguma coisa sobre esta postagem é só me comunicar.

Saúde e muito sucesso para você e toda sua família.

Att

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.