Cách Bắt Sự Kiện (Event) Trong JavaScript - Web Cơ Bản
Có thể bạn quan tâm
1) Sự kiện là gì !?
- Thông thường, sự kiện là những hành động của người dùng khi tương tác lên phần tử HTML.
- Ví dụ:
- Khi người dùng click chuột vào phần tử, đó là một sự kiện. => Ví dụ, bạn hãy thử Click chuột vào đây
- Khi người dùng gõ văn bản vào textfield, đó là một sự kiện. => Ví dụ, bạn hãy thử
- Khi người dùng di chuyển con trỏ vào phần tử, đó là một sự kiện. => Ví dụ, bạn hãy thử Di chuyển con trỏ vào đây
- ....
2) Các sự kiện trong JavaScript
- Trong JavaScript, mỗi sự kiện sẽ tương ứng với một cái tên.
- Dưới đây là danh sách một vài sự kiện phổ biến mà ta thường dùng trong JavaScript.
Tên sự kiện | Mô tả |
---|---|
onclick | Sự kiện xảy ra khi người dùng click chuột vào phần tử |
ondblclick | Sự kiện xảy ra khi người dùng click kép chuột vào phần tử |
onmouseenter | Sự kiện xảy ra khi người dùng di chuyển con trỏ vào phần tử |
onmouseleave | Sự kiện xảy ra khi người dùng di chuyển con trỏ ra khỏi phần tử. |
onkeydown | Sự kiện xảy ra khi người dùng đang nhấn một phím |
onkeyup | Sự kiện xảy ra khi người dùng nhả phím ra |
oncopy | Sự kiện xảy ra khi người dùng sao chép nội dung của phần tử |
oncut | Sự kiện xảy ra khi người dùng cắt nội dung của phần tử |
onpaste | Sự kiện xảy ra khi người dùng dán nội dung vào phần tử |
onchange | Sự kiện xảy ra khi người dùng thay đổi giá trị của phần tử |
Bạn sẽ được tìm hiểu đầy đủ tất cả các sự kiện trong bài hướng dẫn nâng cao về sự kiện
3) Bắt sự kiện là gì !?
- "Bắt sự kiện" là khi một sự kiện nào đó xảy ra thì ta muốn JavaScript phản ứng lại với sự kiện đó bằng việc thực thi một đoạn mã xác định.
- Ví dụ, tôi muốn khi người dùng Click chuột vào nút này thì câu lệnh alert('Xin chào JavaScript') sẽ được thực thi.
- Ví dụ, tôi muốn:
- Khi người dùng di chuyển con trỏ vào phần tử này thì màu nền của phần tử này sẽ chuyển sang màu hồng (tức là câu lệnh this.style.backgroundColor='pink' được thực thi)
- Khi người dùng di chuyển con trỏ ra khỏi phần tử này thì màu nền của phần tử này sẽ chuyển sang màu trắng (tức là câu lệnh this.style.backgroundColor='white' được thực thi)
4) Cách bắt sự kiện trong JavaScript
- Trước khi bắt sự kiện thì ta cần phải xác định rõ ba thành phần:
- (1) Phần tử dùng để xảy ra sự kiện.
- (2) Sự kiện sẽ xảy ra.
- (3) Đoạn mã sẽ được thực thi khi sự kiện xảy ra.
- Dưới đây là cú pháp dùng để bắt sự kiện:
<Tên-phần-tử Tên-sự-kiện="đoạn mã sẽ được thực thi khi sự kiện xảy ra"> Ví dụ:Khi người dùng click kép chuột vào nút "Xem kết quả" thì đoạn mã:
var a = 100; var b = 50; var result = (a + b)*2; alert('Kết quả của biểu thức là: ' + result) sẽ được thực thi.
<!DOCTYPE html> <html> <body> <button ondblclick="var a = 100;var b = 50;var result = (a + b)*2;alert('Kết quả của biểu thức là: ' + result)">Xem kết quả</button> </body> </html> Xem ví dụ Ví dụ:Khi người dùng click chuột vào nút "Xin chào" thì hàm hello() sẽ được thực thi
<!DOCTYPE html> <html> <body> <button onclick="hello()">Xin chào</button> <p id="demo"></p> <script> function hello(){ var name = "Nguyễn Thành Nhân"; var year = 1993; var str = "Tôi tên " + name + " sinh năm " + year; document.getElementById("demo").innerHTML = str; } </script> </body> </html> Xem ví dụ- Lưu ý: Với cùng một phần tử, ta có thể bắt cho nó nhiều sự kiện.
Ví dụ:Phần tử <div> có id là demo bên dưới được bắt hai sự kiện:
- Khi người dùng di chuyển con trỏ vào nó thì sự kiện onmouseenter xảy ra và câu lệnh this.style.backgroundColor='yellow' sẽ được thực thi.
- Khi người dùng di chuyển con trỏ vào nó thì sự kiện onmouseleave xảy ra và câu lệnh this.style.backgroundColor='gray' sẽ được thực thi.
- Lưu ý:
- Nếu đoạn mã được viết bên trong bên trong cặp dấu nháy kép thì trong đoạn mã tuyệt đối không được chứa ký tự là dấu nháy kép.
- Nếu đoạn mã được viết bên trong bên trong cặp dấu nháy đơn thì trong đoạn mã tuyệt đối không được chứa ký tự là dấu nháy đơn.
5) Một số ví dụ khác
Ví dụ: <!DOCTYPE html> <html> <body> <input type="text" onkeydown="this.style.backgroundColor='pink'" onkeyup="this.style.backgroundColor='yellow'" placeholder="gõ ký tự vào đây"> </body> </html> Xem ví dụ Ví dụ: <!DOCTYPE html> <html> <body> <textarea cols="50" rows="15" oncopy="alert('Bạn vừa sao chép nội dung của phần tử này')" oncut="alert('Bạn vừa cắt nội dung của phần tử này')" onpaste="alert('Bạn vừa dán nội dung vào phần tử này')">Tài liệu hướng dẫn học lập trình web</textarea> </body> </html> Xem ví dụ Ví dụ: <!DOCTYPE html> <html> <body> <select onchange="alert('Bạn vừa thay đổi giá trị của phần tử này')"> <option value="html">HTML</option> <option value="css">CSS</option> <option value="javascript">JavaScript</option> <option value="mysql">MySQL</option> <option value="php">PHP</option> </select> </body> </html> Xem ví dụTừ khóa » Sự Kiện Di Chuyển Chuột
-
[Tự Học Javascript] Sự Kiện Chuột Trong Javascript »
-
Di Chuột Qua / Ra, Di Chuyển Chuột / Rời Khỏi Trong Javascript - Cafedev
-
Sự Kiện Click, Giữ Và Kéo Chuột - Viblo
-
Sự Kiện Chuột - Tech Wiki
-
Sự Kiện Mousemove Trong Javascript (di Chuyển Chuột) - Freetuts
-
Tất Cả Các Sự Kiện Chuột Trong JavaScript - HelpEx
-
Sự Kiện Mousemove Trong Javascript (di Chuyển Chuột) - MyLop
-
Hướng Dẫn Và Ví Dụ Javascript MouseEvent - Openplanning
-
Sự Kiện Mousemove Trong Javascript (di Chuyển Chuột)
-
.mousemove() | Hàm JQuery | Tham Khảo JQuery | Học Web Chuẩn
-
[Thực Hành] Sự Kiện Chuột
-
Xử Lý Sự Kiện Của DOM Trong JavaScript - NIIT - ICT Hà Nội
-
[Tự Học Javascript] Di Chuyển Chuột: Di Chuột Qua - Chickgolden
-
Sự Kiện (Event) Trong JavaScript - VietTuts