当使用keydonw时,p中内容总比输入框少一个字母,为什么

来源:3-3 编程练习

qq_慕娘010807

2019-06-20 14:02:35

<script>

        $(document).ready(function(){

            $("input").keydown(function(){

                $("p").text($(this).val());

            })

        })

    </script>

如输入abc,p标签只显示ab,改成keyup就正常,为什么?

写回答

1回答

好帮手慕码

2019-06-20

同学你好!

(1)keydown是键盘按下的过程,键盘抬起的过程中字符才会显示。

第一次键盘按下的时候输入框中没有内容,所以p标签中也没有内容显示,第二次按下的时候,显示出来的是第一次输入的内容,不是第二次输入的,所以内容总比输入框少一个字母

(2)keyup,也就是在字符出现在输入框之后,然后再获取里面的内容显示出来,所以是可以正常显示的。

二者的触发点不同:

KeyDown:用户摁下摁键时发生

KeyUp: 用户释放某一个摁键时触发

如果帮助到了你 欢迎采纳 祝学习愉快~

0

0 学习 · 36712 问题

查看课程