aln Postado Julho 6, 2009 Denunciar Share Postado Julho 6, 2009 Pessoal, é o seguinte, estou usando o script<?php include "config.php"; $busca = "SELECT * FROM $tb1 ORDER BY id DESC"; $total_reg = "$nnoticias"; // número de registros por página $pagina = $_GET['pagina']; if (!$pagina) { $pc = "1"; } else { $pc = $pagina; } $inicio = $pc - 1; $inicio = $inicio * $total_reg; $limite = mysql_query("$busca LIMIT $inicio,$total_reg"); $todos = mysql_query("$busca"); $tr = mysql_num_rows($todos); // verifica o número total de registros $tp = $tr / $total_reg; // verifica o número total de páginas // vamos criar a visualização while ($dados = mysql_fetch_array($limite)) { $titulo = $dados['titulo']; $data = $dados['data']; $msg = $dados['msg']; $resultado .= "$data - <a href='$msg' rel='lightbox' title='my caption'> $titulo </a><br>"; echo "&var_para_flash=$resultado"; } ?>ele mostra minhas headlines...http://www.allanmc.com.br/shaolin/html/up/news2.php (ignorem as repetições e os textos!)eu queria saber se existe alguma maneira do flash interpretar os comandos rel='lightbox' e title='my caption' - estes são os comandos que ativam o lightbox, do contrario, ele só interpreta o html comun mesmo.. target="_blank" e etc... obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Matheus Matos Postado Julho 7, 2009 Denunciar Share Postado Julho 7, 2009 não entendi direito, você quer que quando alguém acesse esse endereço já abra diretamente o lightbox é? explica melhor para a gente puder lhe ajudar! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 aln Postado Julho 7, 2009 Autor Denunciar Share Postado Julho 7, 2009 hm.... não exatamente... o que eu quero, é issohttp://www.lucasferreira.com/experimentos/lightbox_flash/porém, em vez de ser um botão em flash, seria com os meus links em php lidos no flash, repare que o endereço que eu postei no post anterior, mais em baixo, também tem um flash, e no primeiro headline, 05/07/09 - foto1, ele abre a foto sem usar o lightbox...eu já achei alguns artigos explicando como fazer isso, mas não com php... eu não sei mais o que fazer...$resultado .= "$data - <a href='$msg' rel='lightbox' title='my caption'> $titulo </a><br>";essa linha é lida no flash, mas o flash não reconhe o rel e o title, e isso faz com que não abra as fotos com lightbox... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 neto.joaobatista Postado Julho 7, 2009 Denunciar Share Postado Julho 7, 2009 $resultado .= "$data - <a href='$msg' rel='lightbox' title='my caption'> $titulo </a><br>";essa linha é lida no flash, mas o flash não reconhe o rel e o title, e isso faz com que não abra as fotos com lightbox...Como você está lendo essa linha no Flash ?Não seria mais fácil você enviar um XML para o Flash ??[]'sJ. Neto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 aln Postado Julho 7, 2009 Autor Denunciar Share Postado Julho 7, 2009 (editado) Opa.. uso o seguinte as para ler no flash:System.useCodepage = true; var retorno:LoadVars = new LoadVars(); retorno.onLoad = function(carregou:Boolean){ if (carregou) { //Aqui vão as ações para quando for tudo carregado, exemplo: trace(retorno.var_para_flash); teste_txt.html = true; teste_txt.htmlText = retorno.var_para_flash; } else { //Aqui vão as ações para quando der algo errado, exemplo: trace("Erro ao carregar"); } } retorno.load('http://www.allanmc.com.br/shaolin/html/up/news2.php');eu já pensei em usar xml, mas não daria na mesma? pois da mesma forma, os links seriam exibidos em uma caixa dinamica, e nela, o flash só le as tags comuns de html, a href, b, img src.. Editado Julho 7, 2009 por aln Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 neto.joaobatista Postado Julho 7, 2009 Denunciar Share Postado Julho 7, 2009 (editado) eu já pensei em usar xml, mas não daria na mesma? pois da mesma forma, os links seriam exibidos em uma caixa dinamica, e nela, o flash só le as tags comuns de html, a href, b, img src..Bom, de fato o TextField.htmlText irá entender apenas os atributos comuns.Mas com um XML você conseguiria ter a listagem de todos as tags com todos os atributos, ai com getCharIndexAtPoint você consegue o caracter pela a posição que o kara clicou, faz a varredura até encontrar o primeiro espaço em branco antes e até encontrar o próximo espaço em branco depois, faz a seleção e compara com os seus links, encontrando o link na lista do XML você dispara a ação.[]'sJ. Neto Editado Julho 7, 2009 por neto.joaobatista Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 aln Postado Julho 7, 2009 Autor Denunciar Share Postado Julho 7, 2009 obrigado...pareçe bem complicado, eu fiz uma pesquisa e vi que essa função é de as 3, mas ai não seria possível, teria que mudar meu script pra as 3 também, ou não?... eu vi no help do flash também, mas não intendi ainda o que ela faz, pode me passar alguma coisa ou algum link? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 neto.joaobatista Postado Julho 8, 2009 Denunciar Share Postado Julho 8, 2009 pareçe bem complicado, eu fiz uma pesquisa e vi que essa função é de as 3, mas ai não seria possível, teria que mudar meu script pra as 3 também, ou não?... eu vi no help do flash também, mas não intendi ainda o que ela faz, pode me passar alguma coisa ou algum link?Bom amigo, fiz um teste aqui e realmente ficou mais complicado que deveria, porém acho que se você fizer:1. Envie seus dados para o Flash no formato XML:<dados> <texto>um <a href="event:1">texto</a> que está dentro do seu <a href="event:2">campo</a></texto> <links> <link id="id1" rel="primeiro link" target="self" /> <link id="id2" rel="segundo link" target="_blank" /> </links> </dados> O primeiro nó do seu XML é o texto, nele você coloca o que irá aparecer no seu TextField. Logo abaixo do seu nó texto você tem um nó chamado links e dentro dele uma referência para cada link do seu nó texto. Ai você irá trocar todos os hrefs dos seus links por: <a href="event:1">link 1</a> <a href="event:2">link 2</a> ... <a href="event:1000">link 1000</a> E para cada event:1, event:2, ..., event:N você terá um link no nó links que irá conter os dados que você precisa. Para fazer isso no AS 3 você usa o event:X, porém é possível obter o mesmo resultado no AS com asfunction. O exemplo abaixo foi feito utilizando o AS3 por que como não uso Windows não tenho o Flash aqui para testar... package { import flash.events.TextEvent; import flash.display.Sprite; import flash.text.TextField; public class Teste extends Sprite { /** * O campo que conterá seu texto */ private var seucampo:TextField; /** * Um outro campo só para você ver o resultado */ private var outrocampo:TextField; /** * O XML que você irá carregar, nesse exemplo eu usei um XML aqui dentro mesmo */ private var dados:XML; /** * Constroi o teste */ public function Teste(){ this.seucampo = new TextField(); this.seucampo.width = 200; this.seucampo.height = 200; this.seucampo.border = true; // Adicionamos um listener para que quando alguém clicar em um link chamar o método clicado this.seucampo.addEventListener( TextEvent.LINK, clicado ); this.outrocampo = new TextField(); this.outrocampo.y = 202; this.outrocampo.width = 200; this.outrocampo.height = 200; this.outrocampo.border = true; this.pegaXML(); this.escreveCampo(); this.addChild( this.seucampo ); this.addChild( this.outrocampo ); } /** * Pega o XML do servidor, nesse exemplo eu usei um XML escrito aqui mesmo */ public function pegaXML():void { this.dados = <dados> <texto>um <a href="event:1">texto</a> que está dentro do seu <a href="event:2">campo</a></texto> <links> <link id="id1" rel="primeiro link" target="self" /> <link id="id2" rel="segundo link" target="_blank" /> </links> </dados> } /** * Aqui pegamos o XML e jogamos o nó texto para o seucampo */ public function escreveCampo():void { this.seucampo.htmlText = this.dados.texto.toXMLString(); } /** * Cada vez que alguém clicar em um link um evento é disparado e esse método é chamado */ public function clicado( e:TextEvent ):void { var id:String = "id" + e.text; var rel:String = dados.links.link.( @id == id ).@rel.toXMLString(); var target:String = dados.links.link.( @id == id ).@target.toXMLString(); outrocampo.text = "link: " + e.text + "\nrel: " + rel + "\ntarget: " + target; } } }[]'sJ. Neto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 neto.joaobatista Postado Julho 8, 2009 Denunciar Share Postado Julho 8, 2009 pareçe bem complicado, eu fiz uma pesquisa e vi que essa função é de as 3, mas ai não seria possível, teria que mudar meu script pra as 3 também, ou não?... eu vi no help do flash também, mas não intendi ainda o que ela faz, pode me passar alguma coisa ou algum link?Bom amigo, fiz um teste aqui e realmente ficou mais complicado que deveria, porém acho que se você fizer:1. Envie seus dados para o Flash no formato XML:<dados> <texto>um <a href="event:1">texto</a> que está dentro do seu <a href="event:2">campo</a></texto> <links> <link id="id1" rel="primeiro link" target="self" /> <link id="id2" rel="segundo link" target="_blank" /> </links> </dados> O primeiro nó do seu XML é o texto, nele você coloca o que irá aparecer no seu TextField. Logo abaixo do seu nó texto você tem um nó chamado links e dentro dele uma referência para cada link do seu nó texto. Ai você irá trocar todos os hrefs dos seus links por: <a href="event:1">link 1</a> <a href="event:2">link 2</a> ... <a href="event:1000">link 1000</a> E para cada event:1, event:2, ..., event:N você terá um link no nó links que irá conter os dados que você precisa. Para fazer isso no AS 3 você usa o event:X, porém é possível obter o mesmo resultado no AS com asfunction. O exemplo abaixo foi feito utilizando o AS3 por que como não uso Windows não tenho o Flash aqui para testar... package { import flash.events.TextEvent; import flash.display.Sprite; import flash.text.TextField; public class Teste extends Sprite { /** * O campo que conterá seu texto */ private var seucampo:TextField; /** * Um outro campo só para você ver o resultado */ private var outrocampo:TextField; /** * O XML que você irá carregar, nesse exemplo eu usei um XML aqui dentro mesmo */ private var dados:XML; /** * Constroi o teste */ public function Teste(){ this.seucampo = new TextField(); this.seucampo.width = 200; this.seucampo.height = 200; this.seucampo.border = true; // Adicionamos um listener para que quando alguém clicar em um link chamar o método clicado this.seucampo.addEventListener( TextEvent.LINK, clicado ); this.outrocampo = new TextField(); this.outrocampo.y = 202; this.outrocampo.width = 200; this.outrocampo.height = 200; this.outrocampo.border = true; this.pegaXML(); this.escreveCampo(); this.addChild( this.seucampo ); this.addChild( this.outrocampo ); } /** * Pega o XML do servidor, nesse exemplo eu usei um XML escrito aqui mesmo */ public function pegaXML():void { this.dados = <dados> <texto>um <a href="event:1">texto</a> que está dentro do seu <a href="event:2">campo</a></texto> <links> <link id="id1" rel="primeiro link" target="self" /> <link id="id2" rel="segundo link" target="_blank" /> </links> </dados> } /** * Aqui pegamos o XML e jogamos o nó texto para o seucampo */ public function escreveCampo():void { this.seucampo.htmlText = this.dados.texto.toXMLString(); } /** * Cada vez que alguém clicar em um link um evento é disparado e esse método é chamado */ public function clicado( e:TextEvent ):void { var id:String = "id" + e.text; var rel:String = dados.links.link.( @id == id ).@rel.toXMLString(); var target:String = dados.links.link.( @id == id ).@target.toXMLString(); outrocampo.text = "link: " + e.text + "\nrel: " + rel + "\ntarget: " + target; } } }PS: Já faz bastante tempo que não desenvolvo utilizando AS e nem tenho mais Flash na minha máquina (nem é possível). O pessoal do ActionScript poderá te ajudar melhor quanto ao event:qqrcoisa ou o asfunction:suafuncao,parametro.[]'sJ. Neto Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
aln
Pessoal, é o seguinte, estou usando o script
ele mostra minhas headlines...
http://www.allanmc.com.br/shaolin/html/up/news2.php (ignorem as repetições e os textos!)
eu queria saber se existe alguma maneira do flash interpretar os comandos rel='lightbox' e title='my caption' - estes são os comandos que ativam o lightbox, do contrario, ele só interpreta o html comun mesmo.. target="_blank" e etc...
obrigado.
Link para o comentário
Compartilhar em outros sites
8 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.