Question

Je suis un problème avec gtetting fadeIn effet fadeOut de jQuery pour fonctionner correctement dans IE (6 + 7 + 8). Le script fonctionne très bien dans FF et Safari (fading bien), mais dans IE, il montre juste / peaux -. Pas d'effet la décoloration du tout

Toutes les idées?

$(".myclass ul li:eq(" + $(this).attr("href") + ")").fadeIn(5000); 

L'attribut href qu'il devient tient simplement une valeur numérique représentant la position de la longueur ul li.

Était-ce utile?

La solution

J'ai eu le même problème et a utilisé le code ci-dessous (à partir du lien affiché par codeur Q8 ci-dessus). Il fonctionne bien, mais j'avais encore quelques problèmes. J'ai remarqué que l'utilisation fadeTo sur un élément conteneur qui a eu des enfants avec un positionnement relatif ou absolu ne fonctionne pas dans IE8. Le parent disparaîtrait, mais tous les éléments enfants avec un positionnement positif ou d'un parent demeurerait en vue. La seule façon de contourner ce problème est de sélectionner l'élément conteneur et tous ses enfants en utilisant jQuery, puis appliquer fadeTo tous.

jQuery.fn.fadeIn = function(speed, callback) { 
    return this.animate({opacity: 'show'}, speed, function() { 
        if (jQuery.browser.msie)  
            this.style.removeAttribute('filter');  
        if (jQuery.isFunction(callback)) 
            callback();  
    }); 
}; 

jQuery.fn.fadeOut = function(speed, callback) { 
    return this.animate({opacity: 'hide'}, speed, function() { 
        if (jQuery.browser.msie)  
            this.style.removeAttribute('filter');  
        if (jQuery.isFunction(callback)) 
            callback();  
    }); 
}; 

jQuery.fn.fadeTo = function(speed,to,callback) { 
    return this.animate({opacity: to}, speed, function() { 
        if (to == 1 && jQuery.browser.msie)  
            this.style.removeAttribute('filter');  
        if (jQuery.isFunction(callback)) 
            callback();  
    }); 
}; 

Autres conseils

Pour moi, en utilisant fadeIn() a bien fonctionné, mon <div> serait bien fade-in sur IE9, puis (une fois la disparition a été achevée) il disapper à nouveau. Ah.

Le correctif a été d'ajouter la valeur filter css montré ici:

$("#fadeMeIn").fadeIn("slow");
$("#fadeMeIn").css('filter', 'none');

Essayez ceci:

$(".myclass ul li:eq(" + $(this).attr("href") + ")").hide().fadeIn(5000);

J'ai eu un problème similaire avec un script dans IE8. Après avoir mis le z-index le problème a disparu. J'ai trouvé la solution ci-dessous.

http://www.kevinleary.net/jquery -fadein-fadeOut-problèmes-en-Internet explorer /

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top