如何阻止手机虚拟键盘弹起

问题出现:

最近在做一个微信公众号项目,里面使用到一个日历插件,但是在手机端,每次点击都会把手机自带的虚拟键盘调出来

解决方案

1,使用readonly

使用readonly方式来阻止虚拟键盘弹出应该是最简单的方式了。readonly 属性规定输入字段为只读。只读字段是不能修改的。
还有值得注意的是只要声明了readonly属性,不管取什么值都可以,比如readonly=”“、readonly=”readonly”、readonly=”aaa”等效果都是一样的。

优点:简单,易用
缺点:在iOS的Safari中无效

2,document.activeElement.blur()
document.activeElement返回的是页面当前获得焦点的元素,那么.blur()就是让这个元素失去焦点。一旦失去焦点,手机的虚拟键盘自然也就消失了。
示例代码:

html:

<div class="calendar">
    <div>
        "text" id="datePicker" placeholder="点击选择日期"/>
    div>
div>

js:

$("#datePicker").focus(function(){
    document.activeElement.blur();
});

兼容性:此方法兼容Android、iOS

你可能感兴趣的:(移动端)