将keyup写在keydown里面,然后执行效果就很有点奇怪,究竟是怎么执行的呢?第一次:输出1
第二次:输出2、3
第三次:输出4、5、6
第四次:输出7、8、9、10
第五次……怎么执行的次数还和第几次输入有关系代码如下<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head><title>
无标题页
</title>
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" language="javascript">
var num=1;
$(document).ready(function(){
$("#txt1").keydown(function(){
$("#txt1").keyup(function(){
$("#spanTest1").html($("#spanTest1").html()+num+"<br/>");
num++;
});
});
});
</script>
</head>
<body>
<div>
<input type="text" id="txt1" />
<span id="spanTest1">测试执行了几遍<br /></span><br />
</div>
</form>
</body>
</html>
第二次:输出2、3
第三次:输出4、5、6
第四次:输出7、8、9、10
第五次……怎么执行的次数还和第几次输入有关系代码如下<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head><title>
无标题页
</title>
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" language="javascript">
var num=1;
$(document).ready(function(){
$("#txt1").keydown(function(){
$("#txt1").keyup(function(){
$("#spanTest1").html($("#spanTest1").html()+num+"<br/>");
num++;
});
});
});
</script>
</head>
<body>
<div>
<input type="text" id="txt1" />
<span id="spanTest1">测试执行了几遍<br /></span><br />
</div>
</form>
</body>
</html>
2、这些keyup处理函数是绑定的,不是替换的,所以的你keyup处理函数就在不断增多1个
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head><title>
无标题页
</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" language="javascript">
var num=1;
$(document).ready(function(){
$("#txt1").keydown(function(){
$(this).get(0).onkeyup = function(){$("#spanTest1").html($("#spanTest1").html()+num+"<br/>");
num++;};
});
});</script>
</head>
<body>
<div>
<input type="text" id="txt1" />
<span id="spanTest1">测试执行了几遍<br /></span><br />
</div>
</form>
</body>
</html>
写东西的时候写错位置,然后半天没发现何以执行效果会如此诡异。
我现在搞不懂keydown、keyup在这里是怎么执行的了。
这个$("#txt1").keyup其实是添加一个绑定.也就是addEventListener或者AttachEvent.
而不是直接domObject.onkeyup才是给这个事件世界赋值.也就是替换掉以前的