模糊查询:中文兼容苹果的原生输入法

 1.控件:

<div class="mui-input-row mui-search search">
     <input  type="search" class="mui-input-clear"  placeholder="姓名|车牌号|车架号|手机号" id="seach" ><!--oninput="getCustomerByMissKeyWord(this.value,1)"-->
</div>

  

2.js代码 

/**修改原因:兼容苹果的原生输入法;
* 1.之前的效果:onkeyup 如果是拼音zhang输入之后点击输入法键盘变为"张"不会触发onkeyup事件,onkeyinput会触发三次张、空格、张
* 2.修改之后:如果是中文的触发"compositionend"监听,如果是其他英文数字触发"input"事件
*/

 

var node = document.querySelector('#seach');
var inputLock = false;
node.addEventListener('compositionstart', function(){
inputLock = true;
console.log("compositionstart----->"+this.value);
});
node.addEventListener('compositionend', function(){
inputLock = false;
//调用自己的方法
console.log("compositionend----->"+this.value);
});
node.addEventListener('input', function(){
if(!inputLock) {
console.log("input----->"+this.value);
//调用自己的方法
}
});

  

posted @ 2017-09-28 11:52  Charlie098765  阅读(516)  评论(0编辑  收藏  举报