Ir para conteúdo

POWERED BY:

Arquivado

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

dinhografo

[Resolvido] Problemas serios ao utilizar $.ajax() do Jquery

Recommended Posts

Consegui um tempinho aqui, veja se te ajuda:

 

 

 

Link direto para a página Lightbox, que está sendo carregada com ajax:

http://www.wbruno.com.br/scripts/ajax-url.html#lightbox

 

Link direto para a página #contato:

http://www.wbruno.com.br/scripts/ajax-url.html#contato

 

 

Pseudo tutorial:

http://wbruno.com.br/blog/2011/11/25/carregando-conteudo-ajax-trocando-url-jquery/

 

 

Cara.. eu sou apenas um usuário, assim como você. Só que gosto de ajudar, e de compartilhar conhecimento. Dessa forma me tornei moderador.

Mas não é preciso ser moderador para ajudar. Você também pode contruibuir com outras pessoas que tenham dúvidas.

É assim que funciona o fórum. A comunidade só se mantém se as pessoas trocarem duvidas/respostas.

 

 

Enjoy :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

E quando eu estava quase desistindo eis que um código PHP me fez abrir os olhos para o javascript;

$('a').click(function (e){
e.preventDefault();
return $caminho = $(this).attr('href');
});
$('*').keydown(function (e){
var caminho = (window.$caminho===undefined)?'home':$caminho;
       if(e.keyCode == 116){
               console.log('Valor de (e.keyCode) = ' + e.keyCode + ', Valor de (caminho)= ' + caminho);
	return false;
       }               
});

Esse aí veio bem rápido, bastou eu lembrar de retornar a variável (return $caminho = $(this).attr('href');), claro que apanhei um pouco principalmente pra saber que eu iria precisar usar um $ na frente da variável pra retornar ela direito(ao menos foi o que deu pra entender no site dos gringos usando o tradutor), e tambem no if de linha, pra mim, era só usar um isset(variável) ou (!variável, vaiável=='', ....), mas fui compelido a perceber que isso é javascript e põe dureza pra achar como identificar uma referencia de "isset" para javascript, porém depois foi tudo uma maravilha, ou melhor quase tudo.

 

Não consegui de maneira alguma fazer o script dar um window.location.href pra atualizar a página e nem usando o trigger(), click(), delegate() da jQuery para disparar um clique automático.

 

A intenção é fazer com que o usuário ao apertar F5 não atualize a página e sim dar um clique simulado com um mouse no link em que ele se encontra. E eu que achei que tava difícil fazer os 3 browsers capturarem o ultimo link clicado!!!

 

Caraca tá faltando tão pouco, na verdade só isso, e eu não tô conseguindo. Uma judinha denovo por favor. Obrigado

 

2 Observações sobre seu script

 

A 1ª é que ele traz um sistema de links tipo usado por ancoras(faz tempo que eu não via isso), e isso faz com que se o usuário voltar pelo botão do navegador a página carrega mas as imagens não abrem na lightBox, e mesmo que a função pega_arq( url ) cumpra o papel o qual se propõe em geral fica meio complicado de implementar em um siestema já pronto, principalmente se o sistema/site usar uma liguagem server side PHP OO, o que não quer dizer que não funcione com algumas rápidas implementações, a minha vontade de usar o jQuery, é o seu dinamismo pois assim, se eu for implementar em um sistema já pronto eu só preciso adaptar algumas pouquissimas linhas do código jQuery mesmo, mas a insersão de plugins do teu código tá muito melhor, bem mais claras e simples.

 

A 2ª não é nada de importante, apenas é que eu já usei esse lightBox em uma coisinha rápida que eu fiz pra um amigo e percebi que o css tá faltanto um 'text-decoration:none' na tag 'a' e as imagens(Prev, Next, Close tem que traduzir) só isso, rsrsrs.

 

Obrigado mais uma vez pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pronto agora sim o código está funcionando.

$('a').click(function (e){
	e.preventDefault();
	return $caminho = $(this).attr('href');
});
$('*').keydown(function (e){
var caminho = (window.$caminho===undefined)?'home':$caminho;
       if(e.keyCode == 116){
               console.log('Valor de (e.keyCode) = ' + e.keyCode + ', Valor de (caminho)= ' + caminho);
	$('<a href="'+caminho+'" class="link">'+caminho+'</a>').click();
	return false;
       }               
});

Eu tentei várias vezes acessar com algo do tipo 'caminho.click()' só que 'caminho' não é não é um elemento e sim uma propriedade ou um valor, por issso tem que se criar um elemento($('<a href="'+caminho+'" class="link">'+caminho+'</a>').click()) para definir em sua propriedade "href" o valor recuperado da propriedade href do link clicado e simular um clique real com .click(), e pronto.

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.