解决js中文输入法无法触发onkeyup事件问题
2012/12/29 10:26:16

当监听一个input的keyup的事件的时候,英文输入法的情况下可以实时的通过keyup事件检测到文本框value的变化,但是当输入法变成中文后,input的keyup事件就不会被正常触发。
oninput是firefox下面可用,而onpropertychange则是ie下可用。两个方法有着一些区别。
oninput只能检测到value这个属性的变化,而onpropertychange则可以检测到包含value的所有属性的变化。于是开始改成这个样子。
使用oninput以及onpropertychange
<html>
<head>
<script type=”text/javascript”  src=”http://www.zlovezl.cn/static/js/jquery-1.4.2.min.js”></script>
</head>
<body>
<p>
使用oninput以及onpropertychange事件检测文本框内容:
</p>
<p>
<input  type=”text” name=”inputorp_i” id=”inputorp_i”  autocomplete=”off”/>
<span  id=”inputorp_s”></span>
<script  type=”text/javascript”>
//先判断浏览器是不是万恶的IE,没办法,写的东西也有IE使用者
var bind_name  = ‘input’;
if (navigator.userAgent.indexOf(“MSIE”) != -1){
bind_name =  ‘propertychange’;
}
$(‘#inputorp_i’).bind(bind_name,  function(){
$(‘#inputorp_s’).text($(this).val());
})
</script>
</p>
</body>
</html>         

返回列表
返回首页
©2024 金松软件
Powered by iwms