Pergunta

Estou tentando desaparecer e desaparecer um PNG transparente usando o jQuery. Obviamente, parece liso no Firefox, mas significativamente menor que aceitável no IE (7 e 8). É um bug conhecido com o IE, e infelizmente não parece haver muita solução alternativa.

Basicamente, o que estou fazendo é colocar um retângulo branco semi-transparente sobre uma imagem para fazer a imagem aparecer 'no fundo'. Eu quero fazer isso suavemente, e é aí que o Fadein entra. Por causa do bug do IE, no entanto, fui forçado a desaparecer um retângulo branco completamente opaco sobre a imagem, fazendo com que ela desapareça. Embora isso pareça significativamente melhor e seja quase o que estou procurando, ainda não é aceitável. O usuário precisa poder ver alguma imagem na página, embora em segundo plano.

Então minha pergunta é a seguinte:

Existe uma maneira de interromper a função Fadein (ou qualquer animação jQuery, realmente) depois de animar por 75% do tempo esperado de animação?

Isso deixaria minha imagem 75% misturou o retângulo branco, e eu não precisaria lidar com o desagradável inseto PNG transparente do IE.

Obrigado!

Foi útil?

Solução

Você pode usar uma imagem opaca e apenas animar sua opacidade para 75%.

  $('#overlay').animate({
    opacity: 0.75
  }, 5000, function() {
    // Animation complete.
  });

Outras dicas

Em vez de Fadein/Fadeout, use o animar Funcionar para animar a propriedade Opacity para o nível desejado.

Você também pode usar o Fadeto função.

Este é o Synthax:

.fadeTo( duration, opacity, [ callback ] )

Não é recomendado para a sua situação, mas aqui está a resposta real para sua pergunta, conforme feito :-)

.stop( [ clearQueue ], [ jumpToEnd ] )

Quando .Stop () é chamado em um elemento, a animação atualmente executada (se houver) é interrompida imediatamente. Se, por exemplo, um elemento estiver sendo oculto com .slideup () quando .Stop () for chamado, o elemento ainda será exibido, mas será uma fração de sua altura anterior. As funções de retorno de chamada não são chamadas.

http://api.jquery.com/stop/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top