Неверный аргумент в IE8

Это сбило меня с толку на пару часов. Почему при тестировании в IE8 появляется ошибка "Недопустимый аргумент"?

function resizeContainer() {
    wHeight = window.innerHeight;
    $('.container').each(function () {
        $(this).animate({
            height: wHeight
        }, 400);
    });
    $('.content').each(function () {
        wHeight = window.innerHeight;
        fullPad = wHeight - $(this).height();
        if (wHeight < 750) {
            cropFactor = 1.7;
        }
        else {
            cropFactor = 2;
        }
        $(this).animate({
            paddingTop: fullPad / cropFactor
        });
    });
}

Точная ошибка, которую я получаю:

Недействительным аргумент. jquery.js, строка 8826, символ 5

1 ответ

Решение

window.innerHeight не определен ранее IE, поэтому wHeight является undefined, а также fullPad становится NaN, Пытаться $(window).height() вместо.

Установка недопустимых значений стиля в IE является одной из причин ошибки "Недопустимый аргумент".

Другие вопросы по тегам