仅当用户在桌面浏览器上时聚焦输入字段的最佳方法是什么?
我使用 jQuery 并设置焦点是这样完成的:
$(document).ready(function(){
$("input").focus();
}
但是现在在移动设备(例如手机和平板电脑)上,屏幕键盘出现了。我想避免这种情况。我还想避免浏览器嗅探。有任何想法吗?
PS:获取浏览器视口不是解决方案。
仅当用户在桌面浏览器上时聚焦输入字段的最佳方法是什么?
我使用 jQuery 并设置焦点是这样完成的:
$(document).ready(function(){
$("input").focus();
}
但是现在在移动设备(例如手机和平板电脑)上,屏幕键盘出现了。我想避免这种情况。我还想避免浏览器嗅探。有任何想法吗?
PS:获取浏览器视口不是解决方案。
您可以通过检查 UserAgent 仅使用 javascript 来执行此操作,如下所示:
$(document).ready(function(){
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ) {
//mobile code
} else {
//desktop code
$("input").focus();
}
}
我会尝试在服务器端设置一个标志。IE 将一个类添加到您的父 div'isDesktop'
然后在客户端,像这样检查它
$(document).ready(function(){
if($('.myParentDiv').hasClass('isDesktop')){
$("input").focus();
}
}
如果您无权访问服务器端,另一种方法可能是使用用户 jquery $.browser
,它为您提供有关浏览器的信息。