Ir para conteúdo

POWERED BY:

Arquivado

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

Guilherme Teixeira

[Resolvido] $.getJSON não funciona no IE

Recommended Posts

você precisa debugar o teu script, e descobrir exatamente qual parte que não está funcionando.

 

$.getJSON(endereco, function(data){
   alert( data );

verifique se volta esse alert, e se ele tem o [object]

 

vá debugando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque:

<body onload="galeria('72157628596920733')">

por uma chamada js:

 

$(document).ready(function(){
  galeria('72157628596920733');
});

 

deixe a função assim:

 

function galeria( id_album ) 
{
var endereco = "http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=76944816663533d849083eed10844e29&photoset_id="+id_album+"&format=json&nojsoncallback=1"

$.getJSON(endereco, function(data){
	alert( data );
	$.each(data.photoset.photo, function(i,campo){

	$("#listaDeFotos ul").append("<li><img src=\"http://farm"+campo.farm+".staticflickr.com/"+campo.server+"/"+campo.id+"_"+campo.secret+"_s.jpg\" onclick=\"exibiFoto('"+i+"',false);\" /></li>");

	//fotos[i] = new foto("http://farm"+campo.farm+".staticflickr.com/"+campo.server+"/"+campo.id+"_"+campo.secret+"_b.jpg");

	});
});
}

veja se aparece o alert agora.

Remova o restante do código, e deixe só essa função. Vamos incluindo trecho por trecho, até descobrir em qual rotina está o problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

então já que você dispara esse getJSON no onload do body, não use ajax.

 

Faça logo com php, usando um json_decode() para fazer o html para ti.

E ai o js só entra para fazer a animação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas a princípio, qual a função do IE?

 

Já tentou utilizar o retorno jSON com o javascript standard utilizando eval() ?

 

Dica: Não se limite ao uso do jQuery, você deve se perguntar "Ele vai atender o meu objetivo?". Caso não, utilize outros meios. Mas enfim, tente o retorno em XML mesmo, acredito que deva funcionar. :natalw00t:

Compartilhar este post


Link para o post
Compartilhar em outros sites

XML não rola pq ta vindo de um site externo.

 

ajax por motivos de segurança, não acessa retorno XML e tal..

Compartilhar este post


Link para o post
Compartilhar em outros sites

XML não rola pq ta vindo de um site externo.

 

ajax por motivos de segurança, não acessa retorno XML e tal..

 

Sim, você não retornar em XML, mas se ele gerar um XML, com a linguagem server-side, vai poder ler e exibir os resultados na página usando o AJAX.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai no caso dele não tem pq usar ajax.

 

já faz o php gerar html ue, pra que gerar xml, e usar ajax, se pode gerar html direto e pronto. :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma coisa é uma coisa, e outra coisa é outra coisa.

independente da animação, você pode(deve), fazer o html com php, e ai com js, você obtem o array, depois dos elementos já inseridos no DOM.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá, até certo ponto concordo.

 

Eu, se fosse você, geraria um jSON com os paths das imagens com o PHP, imprimiria um jSON com o PHP.

Utilizaria o Javascript( Standard ) para retornar esses valores e dava um looping nos paths das imagens. Mas ai do seu método.

 

Bazinga! Resolvido.

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.