keydown和keypress存在一个字符的延迟,请老师讲解下 keyup正常

来源:3-3 编程练习

鲨鱼没有鲨鱼线

2019-12-01 01:14:51

    $(document).ready(function () {
        $('input').keydown(function () {
            var val = $(this).val();
            $('p').text(val); 
        });
    });
    $(document).ready(function () {
        $('input').keypress(function () {
            var val = $(this).val();
            $('p').text(val); 
        });
    });
    $(document).ready(function () {
        $('input').keyup(function () {
            var val = $(this).val();
            $('p').text(val); 
        });
    });


写回答

1回答

好帮手慕星星

2019-12-01

同学你好,keydown和keypress事件触发的时候,文字还没有敲入文本框(字母显示在这两个事件之后,键盘按下之后才显示字母),这时获取文本框中的内容,得到的是触发键盘事件前的文本,所以会有一个延迟。

这个练习使用keyup事件就好,代码正确。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 14456 问题

查看课程