2013-08-03 51 views
1

Javascript 1是单击链接时将调用的动作。
它的工作原理非常完美,它会自动设置该值,并将该元素进行聚焦。
当然,iPhone的虚拟键盘出现是因为输入文本字段是重点。为什么即使使用obj.focus()时,它也不会在iPhone上显示键盘?

的Javascript 1

jQuery(document).ready(function() { 
    $(document).on('click', 'a#user', function() { 
     $(".box#input").val($(this).attr('value')); 
     var input = $(".box#input"); 
     $(document).scrollTop(input .offset().top - 45); 
     input.focus();   
    }); 
}); 

这个Javascript 2是当URL包含mode=1,当它的加载,将被调用操作。 这个脚本和上面的几乎一样,工作正常。
但有一件事!即使输入文本字段是焦点,iPhone的键盘也不会出现。
这真的很奇怪......为什么?我该如何解决这个问题?

的Javascript 2

window.onload = function(){ 
    if(document.URL.indexOf("mode=1") >= 0){ 
     var input = $(".box#input"); 
     $(document).scrollTop(input .offset().top - 45); 
     var v = input.val(); 
     input.val(''); 
     input.focus().val(v); 
     input.focus(); 
    } 
} 

回答

1

通常情况下,键盘不会出现,除非有某种类型的用户互动(输入栏例如,点击)。但是,如果您使用超时,则可以按照上面的方式以编程方式执行此操作。

setTimout(function(){ 
    input.focus(); 
}, 1); 
+0

添加网页到iOS主屏幕和访问它,你能告诉我既我的代码和代码全部的代码将激活键盘? – HUSTEN

+0

这在我的iPod touch上不起作用。如果它在iPhone上工作,我会感到惊讶。 –

0

input.focus(),如果你从那里

相关问题