iPhone中的.focus()问题

时间:2011-08-24 18:50:21

标签: javascript jquery iphone mobile-safari

我在iPhone的网页上遇到了jQuery .focus()函数的问题。我有四个输入,当一个输入达到4个字符的最大值时,焦点必须移动到下一个输入。 这是代码。

<input type="password" name="cc_number_1" id="cc_number_1" onkeyup="checkCC1()" maxlength="4">
<input type="password" name="cc_number_2" id="cc_number_2" maxlength="4">


function checkCC1()
{
   if($('#cc_number_1').val().length == 4)
   {
      $('#cc_number_2').focus();
   }
}

问题是$('#cc_number_2').focus()无效,焦点不会转移到下一个输入。

我做错了什么?

谢谢!

2 个答案:

答案 0 :(得分:2)

**删除原始答案,因为它没有解决问题**

据推测,移动版Safari(实际上是webkit引擎,因此它会影响其他移动浏览器)存在文档错误,这会使焦点在焦点发生变化时消失。这似乎是我在测试时看到的。我目前正在寻找是否有解决方法。

答案 1 :(得分:1)

这个问题可能是因为移动版Safari不支持“onKeyUp”事件,你试过“onKeyPress”吗?如果事件是原因,则focus()部分可以正常... IDK