前言:
而今大家对“jsinput事件”可能比较关注,你们都想要知道一些“jsinput事件”的相关内容。那么小编在网上搜集了一些有关“jsinput事件””的相关文章,希望姐妹们能喜欢,看官们快快来了解一下吧!最近公司开发的app采用混合开发模式,前端写的H5页面给Android与iOS 调用,iOS遇到了很多坑,现将Input输入框遇到的问题及网上找到的解决方法总结如下:
1、弹出的键盘挡住Input输入框
这个问题不一定每个iPhone手机都会出现,但是一般使用了苹果第三方输入法的手机都重现了这个问题,感谢万能的搜索引擎,我找到了下面这段代码解决了这个问题
const input = document.getElementsByTagName('input')[0];
let interval;
input.onfocus = () => {
interval = setInterval(() => {
input.scrollIntoViewIfNeeded();
}, 1000);
};
input.onblur = () => {
clearInterval(interval);
};
2、点击Input输入框外面的区域弹出的键盘不隐藏
这个问题在安卓机上面没有出现过,具体原因是click不能触发iPhone的事件,需要用触屏事件来触发一次。
页面加入下面的js代码后解决了这个问题
function BlurOrFocus(){
var obj = document.getElementsByTagName('input')[0];
var docTouchend = function(event){
if(event.target!=obj){
setTimeout(function(){
obj.blur();
document.removeEventListener('touchend',docTouchend,false);
},100);
}
}
if(obj){
obj.addEventListener('touchstart',function(){
document.addEventListener('touchend',docTouchend,false);
},false);
}
}
BlurOrFocus();
一起学习,互相督促进步,欢迎关注我~
标签: #jsinput事件