Sự kiện (Event) trong JavaScript là gì?
Sự tương tác của JavaScript với HMTL được xử lý thông qua các sự kiện xảy ra khi người sử dụng hoặc trình duyệt thao tác một trang.
Khi một trang tải, nó được gọi là một sự kiện (Event). Khi người sử dụng click vào một nút, thì click đó cũng là một sự kiện. Các ví dụ về sự kiện khác như nhấn một phím, đóng một cửa sổ, tăng giảm cửa sổ, …
Nhà lập trình có thể sử dụng những sự kiện này để thực thi các phản hồi được mã hóa bởi JavaScript, như các nút để đóng cửa sổ, các thông báo được hiển thị tới người dùng, …
Các sự kiện là một phần của Document Object Model (DOM) Level 3 và mỗi phần tử HTML chứa một tập hợp các sự kiện mà có thể kích hoạt JavaScript Code.
Hy vọng bạn truy cập vào bài hướng dẫn nhỏ của chúng tôi để hiểu sau hơn về Tổng hợp sự kiện (Event) trong HTML. Tại đây, chúng ta sẽ thấy một số ví dụ để hiểu mối quan hệ giữa Sự kiện và JavaScript.
Kiểu sự kiện onclick
Đây là kiểu sự kiện được sử dụng thường xuyên nhất khi một người dùng click chuột trái. Bạn có thể đặt sự xác nhận, cảnh báo, … của bạn đối với kiểu sự kiện này.
Ví dụ
Bạn thử ví dụ sau:
<html>
<head>
<script type="text/javascript">
<!--
function sayHello() {
alert("Hello World")
}
//-->
</script>
</head>
<body>
<p>Click the following button and see result</p>
<form>
<input type="button" onclick="sayHello()" value="Xin chao!" />
</form>
</body>
</html>
Kết quả
Click the following button and see result
Kiểu sự kiện onsubmit
onsubmit là một kiểu sự kiện xảy ra khi bạn cố gắng đệ trình một form. Bạn có thể đặt việc xác nhận form đối với kiểu sự kiện này.
Ví dụ
Ví dụ sau chỉ cách sử dụng onsubmit. Tại đây, chúng ta gọi một hàm validate() trước khi đệ trình một dữ liệu form tới Webserver. Nếu hàm validate() trả về true, form sẽ được đệ trình, nếu không thì nó sẽ không đệ trình dữ liệu.
Bạn thử ví dụ sau:
<html>
<head>
<script type="text/javascript">
<!--
function validation() {
all validation goes here
.........
return either true or false
}
//-->
</script>
</head>
<body>
<form method="POST" action="t.cgi" onsubmit="return validate()">
.......
<input type="submit" value="Submit" />
</form>
</body>
</html>
Kiểu sự kiện onmouseover và onmouseout
Hai kiểu sự kiện này sẽ giúp bạn tạo các hiệu quả đẹp với hình ảnh hoặc ngay cả với văn bản. Sự kiện onmouseover kích hoạt khi bạn di chuyển chuột qua bất kỳ phần tử nào và onmouseout kích hoạt khi bạn di chuyển chuột ra khỏi phần tử đó. Bạn thử ví dụ sau:
<html> <head> <script type="text/javascript"> <!-- function over() { document.write ("Mouse Over"); } function out() { document.write ("Mouse Out"); } //--> </script> </head> <body> <p>Bring your mouse inside the division to see the result:</p> <div onmouseover="over()" onmouseout="out()"> <h2> This is inside the division </h2> </div> </body> </html>
Kết quả
Bring your mouse inside the division to see the result:
This is inside the division
Sự kiện HTML5 chuẩn
Các sự kiện HTML5 chuẩn được liệt kê dưới đây. Tại đây, script chỉ dẫn một hàm JavaScript để được thực thi đối với sự kiện đó.
Thuộc tính | Giá trị | Miêu tả |
---|---|---|
Offline | script | Kích hoạt khi tài liệu ở ngoại tuyến |
Onabort | script | Kích hoạt trên một sự kiện bỏ dở |
onafterprint | script | Kích hoạt sau khi tài liệu được in |
onbeforeonload | script | Kích hoạt trước khi tài liệu tải |
onbeforeprint | script | Kích hoạt trước khi tài liệu được in |
onblur | script | Kích hoạt khi cửa sổ mất trọng tâm |
oncanplay | script | Kích hoạt khi media có thể bắt đầu chơi, nhưng phải dừng để đệm |
oncanplaythrough | script | Kích hoạt khi media có thể chơi tới cuối, mà không dừng để đệm |
onchange | script | Kích hoạt khi một phần tử thay đổi |
onclick | script | Kích hoạt trên một cú click chuột |
oncontextmenu | script | Kích hoạt khi menu ngữ cảnh bị kích hoạt |
ondblclick | script | Kích hoạt khi nhấp đúp chuột |
ondrag | script | Kích hoạt khi một phần tử bị kéo |
ondragend | script | Kích hoạt tại phần cuối của hoạt động kéo |
ondragenter | script | Kích hoạt khi một phần tử đã được kéo tới một mục tiêu thả hợp lệ |
ondragleave | script | Kích hoạt khi một phần tử đang được kéo qua một mục tiêu thả hợp lệ |
ondragover | script | Kích hoạt tại phần đầu của hoạt động kéo |
ondragstart | script | Kích hoạt tại phần đầu của hoạt động kéo |
ondrop | script | Kích hoạt khi phần tử được kéo đang được thả |
ondurationchange | script | Kích hoạt khi độ dài của media được thay đổi |
onemptied | script | Kích hoạt khi phần tử nguồn media đột nhiên trở nên trống |
onended | script | Kích hoạt khi media tiến tới cuối cùng |
onerror | script | Kích hoạt khi một lỗi xảy ra |
onfocus | script | Kích hoạt khi cửa sổ nhận trọng tâm |
onformchange | script | Kích hoạt khi một form thay đổi |
onforminput | script | Kích hoạt khi một form nhận input từ người dùng |
onhaschange | script | Kích hoạt khi tài liệu có thay đổi |
oninput | script | Kích hoạt khi một phần tử nhận đầu vào từ người dùng |
oninvalid | script | Kích hoạt khi một phần tử không hợp lệ |
onkeydown | script | Kích hoạt khi một phím bị nhấn |
onkeypress | script | Kích hoạt khi một phím bị nhấn và được thả ra |
onkeyup | script | Kích hoạt khi một phím được thả ra |
onload | script | Kích hoạt khi tài liệu tải |
onloadeddata | script | Kích hoạt khi dữ liệu media được tải |
onloadedmetadata | script | Kích hoạt khi thời gian và dữ liệu khác của một phần tử media được tải |
onloadstart | script | Kích hoạt khi trình duyệt bắt đầu tải dữ liệu media |
onmessage | script | Kích hoạt khi thông báo được kích hoạt |
onmousedown | script | Kích hoạt khi một nút chuột được nhả ra |
onmousemove | script | Kích hoạt khi con trỏ chuột di chuyển |
onmouseout | script | Kích hoạt khi con trỏ chuột di chuyển ra khỏi một phần tử |
onmouseover | script | Kích hoạt khi con trỏ chuột di chuyển qua một phần tử |
onmouseup | script | Kích hoạt khi một nút chuột được nhả ra |
onmousewheel | script | Kích hoạt khi bánh xe chuột được quay |
onoffline | script | Kích hoạt khi tài liệu ở ngoại tuyến |
onoine | script | Kích hoạt khi tài liệu ở trực tuyến |
ononline | script | Kích hoạt khi tài liệu ở trực tuyến |
onpagehide | script | Kích hoạt khi cửa sổ bị ẩn |
onpageshow | script | Kích hoạt khi cửa sổ trở nên nhìn thấy |
onpause | script | Kích hoạt khi dữ liệu media bị dừng |
onplay | script | Kích hoạt khi dữ liệu media chuẩn bị bắt đầu chơi |
onplaying | script | Kích hoạt khi dữ liệu media đang bắt đầu chơi |
onpopstate | script | Kích hoạt khi lịch sử cửa sổ thay đổi |
onprogress | script | Kích hoạt khi trình duyệt đang nhận dữ liệu media |
onratechange | script | Kích hoạt khi tốc độ chơi của media đã thay đổi |
onreadystatechange | script | Kích hoạt khi trạng thái sẵn sàng thay đổi |
onredo | script | Kích hoạt khi tài liệu thực hiện một redo |
onresize | script | Kích hoạt khi cửa sổ bị thay đổi kích cỡ |
onscroll | script | Kích hoạt khi thanh cuốn của phần tử đang được cuốn |
onseeked | script | Kích hoạt khi thuộc tính seeking của một phần tử media không còn true, và seeking đã kết thúc |
onseeking | script | Kích hoạt khi thuộc tính seeking của một phần tử media là true, và seeking đã bắt đầu |
onselect | script | Kích hoạt khi một phần tử được chọn |
onstalled | script | Kích hoạt khi có một lỗi trong quá trình thu nhận dữ liệu media |
onstorage | script | Kích hoạt khi một tài liệu tải |
onsubmit | script | Kích hoạt khi một form được đệ trình |
onsuspend | script | Kích hoạt khi trình duyệt đã đang thu nhận dữ liệu media, nhưng đã dừng lại trước khi toàn bộ media file được thu nhận |
ontimeupdate | script | Kích hoạt khi media thay đổi vị trí chơi của nó |
onundo | script | Kích hoạt khi một tài liệu thực hiện một undo |
onunload | script | Kích hoạt khi người sử dụng rời khỏi tài liệu |
onvolumechange | script | Kích hoạt khi media thay đổi âm lượng, kể cả khi media được thiết lập là mute |
onwaiting | script | Kích hoạt khi media đã dừng chơi nhưng được mong chờ phục hồi. |