Js控制iphone端的input/textarea元素失去焦点时隐藏键盘
2016-11-23 17:08
453 查看
原文http://www.it165.net/pro/html/201404/12672.html
function objBlur(obj, time){ if(typeof obj != 'string') return false; var obj = document.getElementById(obj), time = time || 300, docTouchend = function(event){ if(event.target!= obj){ setTimeout(function(){ obj.blur(); document.removeEventListener('touchend', docTouchend,false); },time); } }; if(obj){ obj.addEventListener('focus', function(){ //注释这部分是在一个页面多个这样的调用时禁止冒泡让他不要让ios默认输入框上下弹,最好写在对应页面里给对应元素写这里效率低,这种写法很差所以先注释掉下次优化再贴 // var input = document.getElementsByTagName('input'), // ilength = input.length; // for(var i=0; i<ilength; i++){ // input[i].addEventListener('touchend',function(e){e.stopPropagation()},false); // } // var textarea = document.getElementsByTagName('textarea'), // tlength = textarea.length; // for(var i=0; i<tlength; i++){ // textarea[i].addEventListener('touchend',function(e){e.stopPropagation()},false); // } document.addEventListener('touchend', docTouchend,false); },false); }else{ //找不到obj } }
调用方法如下 var isIPHONE = navigator.userAgent.toUpperCase().indexOf('IPHONE')!= -1; if(isIPHONE){ var input = o.objBlur, input2 = new input('realName'), input3 = new input('telphone'), input4 = new input('address'), input2 = input3 = input4 = null; }
相关文章推荐
- Js控制iphone端的input/textarea元素失去焦点时隐藏键盘
- Js控制iphone端的input/textarea元素失去焦点时隐藏键盘
- Js控制iphone端的input/textarea元素失去焦点时隐藏键盘
- js控制iphone端的input/textarea元素失去焦点时隐藏键盘
- h5键盘遮挡输入框问题 、模仿微信输入框失去焦点时隐藏iphone的软键盘和聚焦时出现输入框
- js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件
- html中的css和js控制input,textarea文本框自动获取焦点
- h5键盘遮挡输入框问题 、模仿微信输入框失去焦点时隐藏iphone的软键盘和聚焦时出现输入框
- 记录H5页面IOS中input输入框失去焦点后,键盘隐藏
- 我的Web学习之路1——input,textarea获得/失去焦点时隐藏/显示文字
- JS控制文本框内键盘上下左右键的焦点
- js--在页面元素上(移动到或获取焦点)、鼠标离开(或失去焦点)
- input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
- js控制输入框获得和失去焦点时状态显示的方法
- js控制元素隐藏显示,显示时不用display=block
- 如何通过代码控制软件键盘的显示与隐藏(InputMethodManager 的使用)
- js控制元素的显示与隐藏
- angularjs ng-click传参控制ng-repeat元素显示与隐藏
- javascript 控制ios textarea 不失去焦点问题
- input 输入框获得/失去焦点时隐藏/显示文字