如果是移动设备,则更改输入类型值
Change input type value if is mobile device
伙计们,我正在使用jquery UI库进行日期选择和时间选择器插件。所有工作都在 PC 上工作,但我想将input type
从 text
更改为 date
或 time
.
当我在移动设备上测试时,我希望移动设备使用默认的日期时间选择器(滚动器)。
默认情况下,我只使用简单的代码来显示对话框
$('.datepicker').datepicker();
$('.timepicker').timepicker();
那么是否可以检查它是否是移动设备?如果是,请将类型更改为日期或时间。
我尝试创建功能来检测用户是否与移动设备连接,但它不起作用
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
var date = document.getElementById('datepicker');
date.setAttribute('type','date');
}
但是当我检查它是否是移动的时,此功能有效
function isMobile() { return ('ontouchstart' in document.documentElement); }
这是完整的工作代码:
<script>
(function() {
var date = $(".datepicker");
var time = $(".timepicker");
var isTouchDevice = 'ontouchstart' in document.documentElement;
if ( isTouchDevice ) {
date.attr("type", "date");
time.attr("type", "time");
} else {
date.attr("type", "text");
$('.datepicker').datepicker();
$('.timepicker').timepicker();
}
})();
</script>
您可以像这样检查所有触摸设备:
var isTouchDevice = 'ontouchstart' in document.documentElement;
if ( isTouchDevice ) {
// do mobile handling
var date = $('.datepicker');
date.attr('type','date');
} else {
// do default handling
}
相关文章:
- 在<输入类型=“;文件“/>
- 如何将输入类型值或id从一个jsp传递到另一个jsp页面
- 可以't将几个数字设置为<输入类型=“;数字“>
- 在输入类型日期中设置日期
- 如何将键入的文本从一个输入类型的文本复制到另一个
- 输入类型按钮返回历史记录并返回顶部
- 从HTML表单发布blob的表单输入类型是什么
- 输入类型文件的未捕获类型错误
- 如何在jQuery Mobile中设置100%宽度的输入类型日期
- 输入类型=文件验证停止其他输入类型验证
- 如何显示在输入类型文件中选择的文件
- jQuery Modal Popup-回发后输入类型设置为null
- 在控制器中将输入类型时间更改为秒
- 更改具有相同id的输入类型的所有值
- 对于每个输入类型,使用javascript获取值
- 输入类型范围在angularjs重复内不起作用
- 我如何使HTML5<输入类型=月份>以在所有浏览器上工作
- 如何调用两个函数是一种html输入类型
- 如何使按钮作为输入类型文件
- 可以设置输入类型=文件的文本框的高度