Как предотвратить мигание requestAnimationFrame () в IE11? - PullRequest
0 голосов
/ 02 мая 2019

Я пытаюсь найти исправление для метода requestAnimationFrame() в IE 11 . Я просматривал Интернет, чтобы найти решение. До сих пор я пытался включить polyfills , но ошибка не исчезла.

У кого-нибудь есть решение для ошибки IE11?

Это пример с использованием jQuery 3.4, который использует метод requestAnimationFrame() для метода fadeToggle(). Вы сможете проверить мерцание в IE11 .

1 Ответ

1 голос
/ 02 мая 2019

Вы можете попытаться решить проблему, используя один из подходящих способов, упомянутых ниже.

  1. ДОБАВИТЬ ЦВЕТ ФОНА Установите цвет фона с помощью CSS для элемента, который исчезает илииз.Это самый простой способ решения проблемы.

  2. УДАЛЕНИЕ ФИЛЬТРА CLEARTYPE После исчезновения в элементе вы можете добавить эту простую функцию обратного вызова, чтобы исправить ошибку.

$('#fadingElement').fadeIn(2000, function(){
       this.style.removeAttribute('filter');
});
ИСПОЛЬЗОВАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО МЕТОДА FADEIN / OUT Этот метод служит заменой встроенных методов fadeIn () и fadeOut () для jQuery.

(function($) {
    $.fn.customFadeIn = function(speed, callback) {
        $(this).fadeIn(speed, function() {
            if(jQuery.browser.msie)
                $(this).get(0).style.removeAttribute('filter');
            if(callback != undefined)
                callback();
        });
    };
    $.fn.customFadeOut = function(speed, callback) {
        $(this).fadeOut(speed, function() {
            if(jQuery.browser.msie)
                $(this).get(0).style.removeAttribute('filter');
            if(callback != undefined)
                callback();
        });
    };
})(jQuery);

Ссылки:

(1) jQuery fadeIn & fadeOut Проблемы в Internet Explorer

(2) Как исправить функции постепенного исчезновения / затухания в jQuery для Internet Explorer

Примечание. Я добавил код в фрагмент кода, поскольку этот сайт неправильно форматировал код с помощью блока кода.

...