Pergunta

Esta é uma pergunta muito semelhante a Ajax, subdomínios e a resposta 200 OK (e Javascript Mesma política de origem - Como ela se aplica a diferentes subdomínios?), mas com uma reviravolta. Eu tenho uma situação em que:

  • Um domínio (www.example.com)
  • Onde a página em um subdomínio (sd.example.com/cat/id)
  • Precisa fazer solicitações no estilo Ajax para outro subdomínio (cdn.example.com)

Em contraste com a pergunta acima mencionada, o que estou solicitando são imagens.

  • Obtenha solicitações de imagens (usando jQuery $ .load ())

Isso parece estar funcionando muito bem. Porque estava funcionando muito bem, quando alguém apontou, estava gerando erros no Firebug, a política da mesma origem não me ocorreu imediatamente.

  • Imagens SÃO Carregando no localhost (URL do Apache VirtualHost de test.sd.example.com/cat/id)

No entanto, agora que se lembrava daquela pergunta que vinculei, estou preocupado que isso não funcione de maneira confiável na produção.

  • Vai isso Prosseguir Para trabalhar em um ambiente de produção-e ele funcionará com confiabilidade de navegador?

Resposta: Não - apenas visto Como se estivesse funcionando; Não foi realmente

  • Caso contrário, como faço para consertar isso? (Eu não acho que posso jsonp imagens ... posso?)

Resposta: Continue configurando o SRC da imagem e aguarde para mostrar até que o evento de carregamento seja acionado.

  • Se sim, como faço para interromper os erros do Firebug? Se eu puder. (Eles estão assustando colegas.)

RESPOSTA: O mesmo que acima - Livre -se da etapa, onde está realmente fazendo solicitação de arquivo de imagem.

Código inicial

function(imageUrl, placeTarget){
 var i = new Image();
 var img = $(i);
 img.hide()
 .load(imageUrl, function(e){
  // console.log("loadImage: loaded");
  placeTarget.attr("src", imageUrl);
  return true;
 })
 .error(function(){
  // error handling - do this part
  // console.log("loadImage: error");
  return false;
 });
 return;
} // loadImage
Foi útil?

Solução

Por que não inserir as imagens na página criando elementos de imagem e definindo o SRC. O que poderia ser mais simples?

EDIT: ... via JavaScript

Não tenho certeza se isso é exatamente certo, mas no jQuery:

img = $('<img>');
img.attr('src', 'http://somewhere.com/some_image.jpg');
$('#place_to_add').append(img);
img.ready(fade_into_next);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top