Để xóa một trình xử lý sự kiện đã đăng ký trước đó bằng phương thức addEventListener[]
, bạn sử dụng phương thức removeEventListener[]
như sau
Code language: CSS [css]
element.removeEventListener[type, handler];
Giả sử rằng bạn có một nút với lớp .btn
Code language: HTML, XML [xml]
Register
Phần sau định nghĩa trình xử lý sự kiện
0Code language: HTML, XML [xml]
Register
Code language: JavaScript [javascript]
function clickHandler[e] { console.log['Button Clicked']; }
Sau đây thêm một trình xử lý sự kiện vào sự kiện nhấp chuột của nút
Code language: JavaScript [javascript]
const btn = document.querySelector['.btn']; btn.addEventListener['click', clickHandler];
Để xóa trình xử lý sự kiện click khỏi sự kiện click của nút, bạn sử dụng phương thức removeEventListener[]
như sau
btn.removeEventListener['click', clickHandler];
Code language: JavaScript [javascript]
Lưu ý rằng sự kiện và trình xử lý sự kiện phải giống nhau. Nếu bạn sử dụng chức năng ẩn danh làm trình xử lý sự kiện, bạn sẽ không thể xóa chức năng đó. Đoạn mã sau không hoạt động
Code language: JavaScript [javascript]
const btn = document.querySelector['.btn']; // add an event listner btn.addEventListener['click', function[e]{ console.log['Button Clicked']; }]; // this code won't work and has no effect btn.removeEventListener['click', function[] { console.log['Button Clicked']; }];
Hầu hết các trình duyệt web hiện đại bao gồm Chrome, Firefox và Edge đều hỗ trợ phương pháp removeEventListener[]
IE8 không hỗ trợ phương thức removeEventListener[]
. Thay vào đó, nó sử dụng phương thức
4Code language: HTML, XML [xml]
Register
Nếu bạn vẫn cần hỗ trợ IE8, bạn có thể sử dụng chức năng trợ giúp sau hoạt động trên các trình duyệt
Javascript removeEventListener[] là một hàm sẵn có được sử dụng để xóa, loại bỏ một trình xử lý sự kiện đã được thêm trước đó bằng cách sử dụng hàm addEventListener[] khỏi phần tử
cú pháp
________số 8_______Thông số. Nó chấp nhận ba tham số được chỉ định bên dưới-
- biến cố. Đó là một chuỗi mô tả tên của sự kiện phải loại bỏ
- thính giả. Đó là chức năng của trình xử lý sự kiện để loại bỏ
- sử dụngCapture. Nó là một tham số tùy chọn. Theo mặc định, đó là một giá trị Boolean sai chỉ định loại bỏ trình xử lý sự kiện khỏi giai đoạn sủi bọt và nếu nó đúng thì phương thức removeEventListener[] sẽ loại bỏ trình xử lý sự kiện khỏi giai đoạn chụp
Các ví dụ JavaScript để hiển thị hoạt động của phương thức removeEventListener[]
ví dụ 1. Trong ví dụ này, chúng tôi sẽ tạo hiệu ứng di chuột trên một số văn bản và sau đó xóa sự kiện bằng hàm removeEventListener[]
jav
Click
this
button to stop hovering effect !!
0Click
1Click
2Click
3Click
4Click
5Click
this
7Click
2Click
9Click
this
0this
1
2Click
this
3
this
5_______15_______4this
7
this
8
button to stop hovering effect !!
0_______17_______1button to stop hovering effect !!
2
this
8
button to stop hovering effect !!
5 button to stop hovering effect !!
6
button to stop hovering effect !!
7_______17_______8this
0