jQuery Blur не работает на iOS

У меня есть простая текстовая область, и если я сосредоточусь на ней с помощью iPad или iPhone, фокус останется на этой текстовой области, пока я не нажму на другое поле или ссылку. Я хочу убрать фокус, щелкая другие элементы и делая то же самое для элемента div с атрибутом contenteditable; Итак, когда я где-то читал, я попробовал это:

$('body').click(function(e) {
        if (!$('#text-to-change').is(e.target)) {
            $('#text-to-change').blur();
        } else {
            $('#text-to-change').focus();
        }
    });

Это не работает... Фокус остается на этой текстовой области.

1 ответ

iOS не поддерживает фокусировку и размытие на мобильных устройствах, для размытия я нашел одно решение с использованием CSS, если есть другое решение, пожалуйста, напишите, мне это интересно

CSS:

// search input box blur support

//iPhone 6 in portrait & landscape
@media only screen
  and (min-device-width : 375px)
  and (max-device-width : 667px) {
    body { cursor: pointer; }
}

//iPhone 6 Plus in portrait & landscape
@media only screen
  and (min-device-width : 414px)
  and (max-device-width : 736px) {
    body { cursor: pointer; }
}

// iPhone 5 & 5S in portrait & landscape
@media only screen
  and (min-device-width : 320px)
  and (max-device-width : 568px) {

    body { cursor: pointer; }
}
Другие вопросы по тегам