Jump to content
Fórum Script Brasil
  • 0

Ajax no IE (filtro?)


Luc.Vysk

Question

Galera,

boa noite.

Estou com sérios problemas com o uso do ajax. Estou fazendo um site, e o cliente pediu que tivesse um player de música no site dele. Não poderia usar link normal, pois se não a música começaria denovo.

Optei por usar ajax, fugindo de iframe. Nunca havia trabalhado com ele antes.

Entre todos os problemas que tive(lightbox) e etc, hoje, quando pensava que tudo estava funcionando e fui colocar o site no ar, o ajax para de funcionar no IE. Mas só no IE do Cliente e do meu chefe, parece brincadeira né?!

O site é feito no sistema wordpress, e já funcionava online, no entanto, bastou eu tirar a função que verifica se o usuário está logado ou não, que o problema começou. Vale dizer que que o site é composto por um slide de fundo(ocupando a tela toda) em flash, um player(flash) e as páginas posicionadas sobre esse fundo(css). No entanto no ie do meu chefe, pude verificar que o flash do player não estava chamando o XML da música, e de uma amiga minha também. Logo, pode-se deduzir que se o ajax tem problema, o player também, ou vice-versa, apesar de nenhum ter alguma relação entre o outro.

Procurei um pouco e acredito que o problema seja em alguna filtros de segurança do IE, quando os mesmos estão ativados.

O engraçado é que se eu chamo um página interna separada, por exemplo: http://www.****.com/quem-somos, o ajax funciona normalmente. Sendo que ele chama o mesmo header, tudo.

A minha pergunta é, existe uma solução ou algum tipo de função que diga para caso a página não for carregada em ajax abra como link normal??

Dêem um olhada no código:

$(".menu li a").click(function(event) {

event.preventDefault();

var toLoad = $(this).attr('href')+' #conteudo';

$('#load').remove();

$('body').append('<span id="load"></span>');

$('#load').fadeIn('slow');

$("#conteudo").slideUp('slow', function() {

$("#conteudo").load(toLoad, function () {

$(this).slideDown('slow',hideLoader(), slideProdutos(), resizeSide() );

});

});

function hideLoader() {

$('#load').fadeOut('slow');

}

});

Explicando:

Eu comecei de maneira errada, e fui me complicando cada vez mais que tentava tapar buraco.

Reparem:

eu tenho o site normal, onde todas as páginas abrem com a função acima, porém eu tenho uma página Produtos, que deve usar a mesma função, daí que eu chamo "slideProdutos()". Estúpido né?! É, como falei, comecei tudo errado.

O "resizeSide()" é apenas para controlar a altura da barra lateral, que deve ser 100%. Pórém como ela tem um "buraco", que pediram que pulasse o menu, não funcionaria com css, logo coloquei o javascript que sempre controla a altura dela.

Seria muito mais fácil com a imagem do layout, no entanto eu estou em casa, e só tenho essa imagem no trabalho.

Espero muito que vocês possam me ajudar, qualquer coisa, por favor. Que eu não aguento mais esse site.

Att. Lucas

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...