Sự kiện keypress() trong jQuery
1) Sự kiện keypress() trong jQuery
- Sự kiện keypress() xảy ra khi một phím được nhấn xuống.
- Ví dụ: Bạn hãy thử nhập một nội dung gì đó vào phần tử <textarea> bên dưới.
- Lưu ý: Nếu một phím được nhấn xuống và giữ nguyên (không nhả ra) thì trong khi đó sẽ xảy ra vô số sự kiện keypress().
- Ví dụ: Bạn hãy thử nhấn một phím nào đó vào phần tử <textarea> bên dưới và giữ nguyên.
Số sự kiện keypress() đã xảy ra: 0 |
2) Điểm giống nhau & khác nhau giữa keypress() & keydown()
- Điểm giống: Cả hai sự kiện này đều xảy ra khi một phím được nhấn xuống.
- Điểm khác:
- Sự kiện keydown() xảy ra với hầu hết tất cả các phím bấm.
- Sự kiện keypress() không xảy ra với hầu hết tất cả các phím bấm, điển hình là khi bạn bấm vào các phím như tab caps lock shift ctrl alt esc backspace thì sẽ không xảy ra sự kiện keypress().
- Một điểm khác biệt nữa là khi phần tử được thiết lập sự kiện keypress() lẫn keydown(), nếu ta bấm các phím mà cả hai sự kiện đều xảy ra thì sự kiện keypress() sẽ được ưu tiên hơn.
- Ví dụ: Phần tử <textarea> bên dưới được thiết lập cả sự kiện keypress() lẫn keydown(). Nếu sự kiện keypress() xảy ra thì nền của nó sẽ chuyển sang màu xanh, nếu sự kiện keydown() xảy ra thì nền của nó sẽ chuyển sang màu đỏ.
|
3) Cách sử dụng sự kiện keypress() trong jQuery
- Có hai trường hợp sử dụng sự kiện keypress():
- Trường hợp 1: Khi sự kiện keypress() xảy ra thì một chức năng sẽ được thực thi:
$(selector).keypress(function(){
//đoạn mã sẽ được thực thi khi sự kiện keypress() xảy ra
})
- Trường hợp 2: Kích hoạt sự kiện keypress() cho một phần tử:
$(selector).keypress();
4) Một số ví dụ
- Khi phần tử <textarea> xảy ra sự kiện keypress() thì nền của phần tử <textarea> đó sẽ được chuyển sang màu vàng.
<script>
$(document).ready(function(){
$("textarea").keypress(function(){
$(this).css("background-color","yellow");
});
});
</script>
Xem ví dụ
- Khi phần tử <button> xảy ra sự kiện click() thì phần tử <textarea> sẽ được kích hoạt sự kiện keypress()
<script>
$(document).ready(function(){
$("button").click(function(){
$("textarea").keypress();
});
});
</script>
Xem ví dụ