jQuery fadeIn fadeOut Текст выглядит плохо в Internet Explorer IE: исправление работает - PullRequest
1 голос
/ 18 января 2011

Я испробовал ранее опубликованные здесь (и в других местах) решения для текста, выглядящего неровным и плохим во время jQuery fadeIn и fadeOut в Internet Explorer IE.

Похоже, что есть два распространенных решения: добавить цвет фона или удалитьАтрибут 'filter'.

С этим дизайном я не могу использовать исправление цвета фона (которое помогает, но в любом случае полностью не устраняет проблему).

Итак, я пытался исправить "удалить атрибут фильтра после исчезновения".Но это не исправляет текст, и версия «removeAttribute» останавливает сценарий.Как вы, ребята, получаете его на работу?

Мой код jQ ниже.

спасибо за рассмотрение вопроса!

====================================

// этот цикл основан на другом ответе Stackoverflow от Pointy

    var divs = $('.myDiv'), i = 0;
    function reveal() {
        if (i == divs.length) divs.fadeIn(inTime, function(){           
            $('.mainPadding').css("height", "4000px"); 
            }); 
        divs.eq(i).fadeIn(inTime, function(){
               //$(this).style.removeAttribute('filter');
               $(this).removeAttr("filter");
            }).delay(waitTime).fadeOut(outTime, function() {
                i++; 
                setTimeout(reveal, 0);
          });
    }
    setTimeout(reveal, 0);   

1 Ответ

2 голосов
/ 18 января 2011

Вот что я нашел на этом ... <pre><br> // When fading a html node with the .fadeIn() and .fadeOut() // functions in jQuery, IE drops the windows Cleartype rendering; // which results in very ugly text. This override corrects that problem </p> <pre><code> 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(); }); };

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...