···
/** * 此方法返回true表示默认删除事件:即一个字符一个字符的删除; * 此方法返回false表示自定义删除事件,如何删除自定义即可 */
$(seletor).keydown(function(event){ if(event.keyCode==8){//keycode为8表示退格键 var textValue = ''; var textObj = $(this).get(0); if(textObj.setSelectionRange){ var rangeStart=textObj.selectionStart; var rangeEnd=textObj.selectionEnd; var delValue = textObj.value.substring(rangeStart-1,rangeStart); var tempStr1=textObj.value.substring(0,rangeStart-1); var tempStr2=textObj.value.substring(rangeEnd); textValue = tempStr1+tempStr2;
//按自定义截取字符串,这里截取的是表情,即删除的时候一个表情一个表情的删除if(delValue=="]" && tempStr1.indexOf("[")>-1){ var res = tempStr1.match(/(\[[\u4E00-\u9FA5]*)$/g); if(face_name1[res+']']!=undefined){ textValue = tempStr1.substring(0,tempStr1.lastIndexOf("["))+tempStr2; } console.info(res); } textObj.value=textValue; textObj.focus(); textObj.setSelectionRange(rangeStart-1,rangeStart-1); return false; }else{ return true; } }})
···