Как определить, открыта ли клавиатура в текущий момент на телефоне.
Иногда, для улучшения юзабилити, нам нужно определить в каком состоянии клавиатура смартфона.
Вариант для jQuery

$(function () {
    initialScreenSize = screen.height, // Текущая высота экрана
        intId = window.setInterval(function () { // Проверяем еще 800 ms 
            if (check()) {
                addClass();
            } else {
                removeClass();
            }
            ;
        }, 800);

    function check() { // сама проверка соответствия
        var kbactive = screen.height;
        if (initialScreenSize !== kbactive) {
            addClass();
            return true;
        } else {
            removeClass();
            return false;
        }
    }

    function addClass() {
        $('body').addClass('keyboard-active');
    }

    function removeClass() {
        $('body').removeClass('keyboard-active');
    }
})

Данный хак добавляет к body класс, в случае, если у пользовтаеля открыта клавиатура.

Плагин рейтинга создан автором этого блога. Буду очень признателен, если вы сможете его поддержать (ссылка)

p.s. Если статья была полезной и вас переполняет чувство благодарности, можете поддержать меня долларом на патреоне

Об авторе

Web Developer. I have expirience in FrontEnd, Backend, Devops. PHP, Python, Javascript (Vue.js, React.js)

Смотреть посты