keypress不支持中文问题解决 获取输入框新输入的内容 中文输入过程中不截断 获取光标的具体坐标

$(this).keypress(function(e) {  //keypress可以获取到点击的键值 和对应的输入内容但在中文下不会触发
	 var c = String.fromCharCode(e.which);  //获取新输入的内容
 });
解决方法用oninput

$('.input_wrap input').on('input', function (event) {
			 	if ($(this).prop('comStart')) return;    // 中文输入过程中不截断
	            var thisval = $('.input_wrap input').val();
	        }).on('compositionstart', function (event) {
	            $(this).prop('comStart', true);
	        }).on('compositionend', function (event) { //在确定中文输入完成后触发获取输入框内容
	        	$('.input_wrap input').getCursorPosition();
	        	var nowdata=event.originalEvent.data; /获取本次新输入的输入框内容
	                $(this).parent().append("" + nowdata + "");
		        $(this).prop('comStart', false);
	        });
获取光标的具体坐标

           我找了好多方法,但是大都是获取当前输入框的字符数量,但是我觉得这样还要判断对应的字符是中文还是英文还是特殊字符,所以,我想了一个歪点子     做一个随着内容撑开的盒子然后直接获取这个盒子的宽度,这样就知道当前的输入光标在输入框的那个位置了~ 感觉这个方法也不是最美丽的~所以有好的方法,请告诉我私信或者评论都可以,先谢过了嘿嘿,

↓代码下载链接奉上

代码下载链接:http://download.csdn.net/download/zyz_3362/10207899

你可能感兴趣的:(常用方法总结,获取光标位置,光标吐水动画,输入框输入内容飞出效果,中文输入过程不截断,实时获取输入框输入内容)