-WEBKIT-USER-SELECT:NONE导致输入框无法输入

原文:http://hicc.me/post/webkit-user-select-none-disabling-text-field.html

最近在webview中写页面的时候发现个别Android机型(Google  Nexus,Android 4.2.2)输入框无法输入(但是键盘可以弹起,所以不是网上所说webView.requestFocus(View.FOCUS_DOWN);的问题),经过试错发现是-webkit-user-select:none;所导致的原因。

后来网上再搜,果然有同样的问题,Phonegap styles -webkit-user-select: none; disabling text field

当然如果你确实需要这个-webkit-user-select这个属性,也可以这样写css代码(来源于上述的stackoverflow上的回答。):

*:not(input,textarea) {
     -webkit-touch-callout:  none ;
     -webkit-user-select:  none ;
}
 
 

在此还想做的引申是,如果是web应用使用了iscroll这个插件,在某些机型上在iscroll4的滚动容器范围内,点击input框、select等表单元素时没有响应,光标不定位,键盘不弹出,原因在于iscroll一直监听用户的touch操作,以便灵敏的做出对应效果,所以它把其余的默认事件屏蔽了,解决的方法是,在iscroll4源码里面找到这一行

 

onBeforeScrollStart:  function  (e) { e.preventDefault(); }
//改为
onBeforeScrollStart:  function  (e) {  var  nodeType = e.explicitOriginalTarget ? e.explicitOriginalTarget.nodeName.toLowerCase():(e.target ? e.target.nodeName.toLowerCase():”); if (nodeType !=’select’&& nodeType !=’option’&& nodeType !=’input’&& nodeType!=’textarea’) e.preventDefault(); }

 

 

 
 

转载于:https://www.cnblogs.com/tzz-ing/p/5028550.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值