您的位置:首页 > Web前端 > JavaScript

使用JavaScript实现“手动”关闭输入法键盘

2016-10-19 16:38 357 查看
场景:app里,比如:在一个页面中,可以用弹起的输入法键盘键入字符到输入框中,再点确定,或者保存按钮等操作即可。但是有很多情况下却没那么舒畅,比如:当输入法键盘唤起时,点左上角返回按钮返回至上一个页面。有可能会发生输入法键盘并未关闭而是在返回的页面中继续保留着弹起的状态。这样的效果会非常扎眼,那这时就要想到如何在进行返回至别的页面之前,把输入法键盘关闭呢?

亲测一款解决方案:

$("#btn_back").off("click").on("click",function(){

//手动关闭输入法键盘事件(让处于"焦点"状态的控件失去焦点即可解决)

plus.nativeUI.confirm("您正处于编译状态,确认退出?",function(e){

if(e.index == 0){

}else if(e.index == 1){

//此为手动关闭输入法键盘核心api

document.activeElement.blur();

mui.back();

}

},"",["取消","确认"]);

});

上面是在用户点击了返回按钮之后,调用了plus的API,可以调用到原生的退出警告提示,注意到“确认”按钮点击

之后响应的是e.index == 1的情况,此时使用document.activeElement.blur();手动关闭键盘即可解决。

此原理也是让获的焦点的控件失去焦点,输入法键盘即可关闭。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: