我正在做一个提供结果的搜索栏(类似于自动完成功能),但是在iOS的Safari上,当键盘打开时在输入标签之外点击时,它不会失去焦点。
我做了一个简单的jsfiddle来演示重现此问题的最少代码:
https://jsfiddle.net/coppolaemilio/0bqrLcwe/4/
的HTML
<input class="selector" type="text">
<ul>
<li>element</li>
</ul>
JS(jQuery)
$('.selector').focus(function() {
$('ul').addClass('visible');
});
$('.selector').focusout(function() {
$('ul').removeClass('visible');
});
的CSS
.selector{
margin: 20px;
}
ul {
display: none;
}
ul.visible {
display: block;
}
最佳答案
我设法使用以下方法找到解决方案:
$(document).on('touchstart', function (event) {
if (!$(event.target).closest('.country-selector').length) {
if ($('.country-selector').is(":visible")) {
$('input.country-selector').blur();
}
}
});
https://jsfiddle.net/coppolaemilio/0bqrLcwe/5/
关于javascript - Safari(移动设备)IOS-在外部单击时输入不会失去焦点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44849859/