我正在尝试让特定的表单字段在iPhone上的Safari浏览器中自动获得焦点。我认为这将是非常简单的,但我不能让这个工作。那么,这实际上是不可能的还是我错过了一些非常明显的东西(我怀疑)?这是我正在使用的代码:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function formfocus() {
document.getElementById('element').focus();
}
window.onload = formfocus;
</script>
</head>
<body>
<form>
<input/>
<input id="element" autofocus/>
<input/>
</form>
</body>
</html>
你可以看到我试图获得焦点两次,一次是通过js,一次是通过输入字段上的HTML“aufofocus”属性。这个伎俩也没有。这适用于桌面浏览器,但是当我在iPhone 4上打开页面时,没有骰子,也就是说,我必须通过单击其中一个表单字段来手动设置焦点。
最终我想要的是在移动浏览器上打开网站并专注于表单字段,包括打开键盘以开始输入。
感谢您的帮助!
答案 0 :(得分:15)
根据this page,出于可用性原因,iphone / ipad不支持自动对焦。
答案 1 :(得分:0)
尝试为input元素指定一个
<input type="email" id="element" autofocus/>
对于后备,您可以使用
<script type="text/javascript">
if (!("autofocus" in document.createElement("input"))) {
document.getElementById("element").focus();
}
</script>
答案 2 :(得分:-1)
尝试setTimeout()中的.focus()。
setTimeout(function() {
jQuery('#element').focus();
}, 500);
我希望,这将是所有人的工作。