如何仅在桌面浏览器上聚焦输入字段

时间:2013-03-23 20:24:33

标签: javascript jquery mobile browser focus

当用户在桌面浏览器上时,只关注 输入字段的最佳方法是什么?

我使用jQuery并设置焦点就像这样:

$(document).ready(function(){
    $("input").focus();
}

但现在在移动设备(例如手机和平板电脑)上,会出现屏幕键盘。我想避免这种情况。我还想避免浏览器嗅探。有什么想法吗?

PS:获取浏览器视口ist 不是解决方案。

2 个答案:

答案 0 :(得分:3)

您只需使用javascript检查UserAgent,就可以这样做:

$(document).ready(function(){
   if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ) {
      //mobile code
   } else {
      //desktop code
      $("input").focus();
   }
}

答案 1 :(得分:0)

我尝试在服务器端设置一个标志。 IE将一个类添加到您的父div 'isDesktop'然后在客户端上,检查它是否如此

 $(document).ready(function(){
     if($('.myParentDiv').hasClass('isDesktop')){
       $("input").focus();
}
    }

如果您无权访问服务器端,则另一种方法可能是用户jquery的$.browser,它会为您提供有关浏览器的信息。