软键盘打开的监听,如何监听软键盘的弹出

seosqwseo3个月前 (07-12)测评日记44

一、H5如何对android和ios手机软键盘的监听

  总结:

   1.在ios中软键盘弹起时,仅会引起body的scrollTop值改变,但是我们可以通过输入框的获取焦点情况来做判断,单也只能在ios中采用这个方案,因为在android中存在主动受气键盘后,但输入框并没有失去焦点,而ios中键盘受气后就会失去焦点;

2.在androis中软键盘弹起或收起时,会改变window的高度,因此监听window的onresize**;

一、Android

//获取原窗口的高度

var originalHeight=document.documentElement.clientHeight||document.body.clientHeight;

window.onresize=function(){

  //键盘弹起与隐藏都会引起窗口的高度发生变化

    var resizeHeight=document.documentElement.clientHeight|| document.body.clientHeight;

     if(resizeHeight-0<originalHeight-0){

    //当软键盘弹起,在此处*作

    }else{

    //当软键盘收起,在此处*作

    }

}

二、ios

focusin和focusout支持冒泡,对应focus和blur,使用focusin和focusout的原因是focusin和focusout可以冒泡,focus和blur不会冒泡,这样就可以使用**代理,处理多个输入框存在的情况。

document.body.addEventListener('focusin',()=>{

      //软键盘弹出的**处理

       if(isIphone()){

      }

    })

  document.body.addEventListener('focusout',()=>{

   //软键盘收起的**处理

     if(isIphone()){

    }

 })

特此声明文章出处:

二、如何监听软键盘的弹出***隐藏

InputMethodManager有一个方法isActive(View view):如果view是输入法的活动view,则返回true。也就是说,如果是由view触发弹出软键盘,则返回true。

if(isActive(edittext))

隐藏键盘

接着让另一个view强制获取焦点,这样isActivite(ediitext)就为false.

这个方法比较简单,代码比较短,也很好理解。

附上代码:

InputMethodManager inputMethodManager=(InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);<br>private boolean hideKeyboard(){

if(inputMethodManager.isActive(searchEditText)){<br>//因为是在fragment下,所以用了getView()获取view,也可以用findViewById()来获取父控件

getView().requestFocus();//使其它view获取焦点.这里因为是在fragment下,所以便用了getView(),可以指定任意其它view

inputMethodManager.hideSoftInputFromWindow(getActivity().getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);

return true;

}

return false;

}

ps:如果是手动弹出键盘,getActivity().getCurrentFocus()改成searchEditText.并且手动弹出的键盘isActivie()失效,可用标记来判断.

三、软键盘可以预防木马**么

软件键盘可以防止那些键盘记录器型的木马盗取账号

不过现在的木马都插入线程了

软件键盘也不怎么好使

下面是一些**木马常用方法看完后你就明白了**木马怎么**的方法,**软件如何**的原理:

1、键盘记录:很多**木马病*实质上是利用键盘“钩子”程序监听和记录用户的击键动作,然后通过**软件的邮件发送模块把记录下的密码发送到**木马的指定邮箱。

对付击键记录**木马,目前有一种比较普遍的方法就是通过软键盘输入,软键盘也叫虚拟键盘,用户在输入密码时,先打开软键盘,然后用鼠标选择相应的字母输入,这样就可以避免**木马记录击键。

2、屏幕快照:软键盘输入使得使用击键记录技术的**木马失去了作用,但是新的木马病*会通过屏幕快照将用户的登录界面连续保存为多张图片,然后通过自带的发信模块发向指定的邮件接受者,**木马通过对照图片中鼠标的点击位置,就很有可能破译出用户的登录账号和密码,从而突破软键盘密码保护技术。

3、内存扫描拦截:**木马病*运行后,它通过Hook技术对系统中所有程序的进程检测,对相关API的调用进行了监控,**木马**软件通过查找特定句柄、窗口或关键字,可以拦截对Windows中的键盘、鼠标、**、粘贴等**,或者直接读取进程未加密的帐号密码,或者对其他API函数的调用**拦截,这种木马具有很强隐蔽性,目前没有非常有效的预防手段。

4、钓鱼:网络钓鱼攻击,**网站伪装成知名公司主页,利用域名相似性和IE浏览器的地址欺*漏洞,诱*网民输入账号和密码,并且通过**脚本程序种植**木马病*,诱使更多用户访问该网站造成感染,网络*子利用这些假网站,盗取登录者账号、密码,给相关部门和行业带来巨大损失,使人们对于网上交易行为的安全性产生更大的质疑,严重阻碍了电子商务行业的发展。

目前防止**的解决办法:

1、**软件:对于已经知道的**木马病*等有害**程序,**软件采用病*特

征码过滤等技术,包括专门的木马查*软件,在设计原理、技术思路上类似,对于新的

**木马**软件**程序,**软件成功率在20%左右,目前**软件公司也在探索

新的技术和方法,目前也并没有取得实质性突破;

2、防火墙:采用端口检测控制等技术,有些防火墙具有特征码过虑技术,比如对于

帐号密码等设置的敏感字符,禁止发送和传递,但是一旦**木马**软件帐号密码被

加密传送,或者利用80等正常端口发送,防火墙也无能为力;

3、PIN码实物卡片:PIN码实物卡片是软键盘输入技术改进型,PIN码实物卡片发行费

用和成本高,目前仅应用在部分银行网站;

4、电话、短信认证,这种方式成本较高,没有普遍采用;

5、i-key(USB-key),硬件密宝,这种方式比较安全,针对性很强,局限于发行商自

己的网站或游戏。

目前技术手段对于**木马**软件和防止**还没有完整的经济的解决办法。

相关文章

小米(MI)小米电视测评使用介绍

小米(MI)小米电视测评使用介绍

很多小伙伴在关注小米(MI)小米电视怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

JAV会议平板电视一体机65英寸触控屏触摸屏电视机多媒体教学一体机教育培训视频会议大屏幕电子白板使用感受分享

JAV会议平板电视一体机65英寸触控屏触摸屏电视机多媒体教学一体机教育培训视频会议大屏幕电子白板使用感受分享

很多小伙伴在关注JAV会议平板电视一体机65英寸触控屏触摸屏电视机多媒体教学一体机教育培训视频会议大屏幕电子白板怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用...

海信(Hisense)98E7G-PRO98英寸4K超清ULED测评怎么样

海信(Hisense)98E7G-PRO98英寸4K超清ULED测评怎么样

很多小伙伴在关注海信(Hisense)98E7G-PRO98英寸4K超清ULED怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐...

海信游戏电视Ace2023款质量测评好不好

海信游戏电视Ace2023款质量测评好不好

很多小伙伴在关注海信游戏电视Ace2023款怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

川宇USB3.0高速读卡器多功能二合一tf内存卡sd单反相机读卡器C396使用感受分享

川宇USB3.0高速读卡器多功能二合一tf内存卡sd单反相机读卡器C396使用感受分享

很多小伙伴在关注川宇USB3.0高速读卡器多功能二合一tf内存卡sd单反相机读卡器C396怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,...

小米积木质量好不好

小米积木质量好不好

很多小伙伴在关注小米积木怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...