Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Ajax com Jquery


Thishinoda

Pergunta

E aí pessoal, td beleza?

To com um probleminha aqui com ajax, vou explicar a situação:

Eu tenho uma página html (index.html) que tem uma div chamada "conteudo" (id). Quando acesso um link, a página solicitada é carregada dentro da div "conteudo". Até aí tudo bem. O problema é que uma das páginas possui uma galeria de imagens onde uso jquery (biblioteca lightbox). Mas, quando eu carrego esta página (da galeria de imagens), o jquery não mais funciona. O problema eu até encontrei, só não sei como resolvê-lo. Para funcionar, a biblioteca jquery lightbox usa a seguinte função (essa função está em index.html):

<script type="text/javascript">
    $(function() {
        $('#galeria a').lightBox();
    });
</script>
e na página onde está a galeria, tenho uma uma div com o id "galeria", a qual a função faz referência:
<div id="galeria"> <!-- aqui fica a lista de imagens --> </div>

Eis o problema: a página é carregada dentro da div "conteudo", e quando clico em uma das imagens o jquery não funciona porque a função (que eu postei aqui) não encontra uma div com o id "galeria" (como foi carregada por ajax, essa pagina com a galeria não fica "visível" pra página index.html). :/

Alguém sabe uma solução pra esse problema?

valeu (Y)

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

i aew Thishinoda, bom conheço 2 maneiras de fazer isso , poder chamar o codigo no final da sua pagina da requisição, dessa maneira:

<script type="text/javascript">
        $('#galeria a').lightBox();
</script>
ou pode colocar no retorno da sua chamada ajax, tipo assim:
$.ajax( { url : 'caminho/pagina' ,
                            type : 'POST' ,
                            dataType : 'html' ,
                            success : function( htm ){
                                $( '#conteudo' ).html( htm );
                                $('#galeria a').lightBox();
                            }
                    } );

espero que ajude abraço!

Editado por Romerito
Link para o comentário
Compartilhar em outros sites

  • 0

valeu Romerito, mas eu já tinha conseguido antes da sua resposta.

Eu tive que colocar uma função dentro do ajax.js que lê os scripts da página requisitada (antes o ajax pegava apenas o html).

Além disso, eu tive que colocar a função e as referências aos arquivos jquery nas duas páginas, no index.html e na outra pagina (fotos.html). Não entendi porque só funcionou assim, eu acertei por acaso. :lol:

Mas funcionou!

valeu pela ajuda :D

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...