我有一个像这样的简单输入字段。
<div class="search">
<input type="text" value="y u no work"/>
</div>
我正在尝试focus()
在一个函数中使用它。所以在一个随机函数内部(不管它是什么函数)我有这条线......</p>
$('.search').find('input').focus();
这在每个桌面上都可以正常工作。
但是它不适用于我的 iPhone。该字段没有获得焦点,并且我的 iPhone 上没有显示键盘。
出于测试目的并向大家展示问题,我做了一个快速示例:
$('#some-test-element').click(function() {
$('.search').find('input').focus(); // works well on my iPhone - Keyboard slides in
});
setTimeout(function() {
//alert('test'); //works
$('.search').find('input').focus(); // doesn't work on my iPhone - works on Desktop
}, 5000);
知道为什么focus()
不能在我的 iPhone 上使用超时功能。
要查看实时示例,请在您的 iPhone 上测试这个小提琴。http://jsfiddle.net/Hc4sT/
更新:
我创建了与我目前在当前项目中面临的完全相同的案例。
我有一个选择框,当“更改”时,它应该将焦点设置到输入字段并滑入 iphone 或其他移动设备上的 kexboard。我发现 focus() 设置正确,但键盘没有出现。我需要键盘出现。