JsjQuery实时监听输⼊框值变化
前⾔
在做web开发时候很多时候都需要即时监听输⼊框值的变化,以便作出即时动作去引导浏览者增强⽹站的⽤户体验感。⽽采⽤onchange时间⼜往往是在输⼊框失去焦点(onblur)时候触发,有时候并不能满⾜条件。
⾸先看⼀下dom中元素事件:
onpropertychange: IE下,当⼀个HTML元素的属性改变的时候,都能通过 onpropertychange来即时捕获。onchange在属性值改变时还必须使得当前元素失去焦点(onblur)才可以激活该事件。在⽤js脚本改动该元素值时候亦能触发onpropertychange事件。
oninput:是onpropertychange的⾮IE浏览器版本,⽀持firefox和opera等浏览器,但有⼀点不同,它绑定于对象时,并⾮该对象所有属性改变都能触发事件,它只在对象value值发⽣改变时奏效。
onchange: (a)当前对象属性改变,并且是由键盘或⿏标事件激发的(脚本触发⽆效);(b)当前对象失去焦点(onblur);
jQuery⽤法
$("#input1").bind("input propertychange change",function(event){
console.log($("#input1").val())
});
原⽣Js
<script type="text/javascript">
// Firefox, Google Chrome, Opera, Safari, Internet Explorer from version 9
function OnInput (event) {
alert ("The new content: " + event.target.value);
}
// Internet Explorer
function OnPropChanged (event) {
if (LowerCase () == "value") {
alert ("The new content: " + event.srcElement.value);
}
}
</script>
//Input标签
<input type="text" oninput="OnInput (event)" onpropertychange="OnPropChanged (event)" value="Text field" />
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论