微信自带浏览器被输入法阻挡文本框的 jQuery 解决方法 by FungLeo
前言
做好了项目之后,在各种浏览器里面测试,都没有问题.很高兴,交付后端使用.然而发现在微信自带浏览器里面,却是出现了问题...写了一段JS脚本,测试了一下,发现,在正常的浏览器当中,当调出输入法的时候,视窗的高度,会减少,以适应输入法占据的屏幕空间.在QQ自带的浏览器里面,也是完全正常的.只有在微信里面,存在这个问题.并且,表现形式非常奇葩...:
机型表现形式iphone6看上去正常,但视窗高度并没有改变.页面可以滑动iphone5不正常,能滑动,但默认没有滑动到当前input红米note正常,没有问题小米4/5不正常,不能滑动,无法使用
与手机操作系统和微信版本都有关系...思路
项目已经做好了,我现在只能打个补丁上去,通篇的解决这个该死的兼容性问题.项目中采用了jquery2版本.因此,这个补丁使用jquery语法来写....,所有出现这个问题的地方,都是使用了input标签.但是,并非所有的input标签都需要调用出输入法,比如按钮和多选框等.因此,我自己构建了一个判断是否需要调用输入法的函数,如下:
// 判断是否为文本框