Computer >> Máy Tính >  >> Lập trình >> Javascript

Xóa trình nghe từ bên trong hàm bên ngoài trong JavaScript?

Để xóa trình lắng nghe khỏi chức năng bên ngoài, hãy sử dụng removeEventListener ().

Ví dụ

Sau đây là mã -

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<link rel="stylesheet"
href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<body>
<button id="demo">Press Me</button>
</body>
<script>
   var demoId = document.getElementById('demo');
   demoId.addEventListener('click', function fun() {
      outerFunction(this, fun);
   }, false);
   function outerFunction(self, funct) {
      console.log('outer function is called....');
      self.removeEventListener('click', funct, false);
      console.log("Listener has been removed...")
   }
</script>
</html>

Để chạy chương trình trên, hãy lưu tên tệp anyName.html (index.html) và nhấp chuột phải vào tệp. Chọn tùy chọn “Mở bằng máy chủ trực tiếp” trong trình chỉnh sửa Mã VS.

Đầu ra

Điều này sẽ tạo ra kết quả sau -

Xóa trình nghe từ bên trong hàm bên ngoài trong JavaScript?

Sau khi nhấp vào nút “Nhấn vào Tôi”.

Điều này sẽ tạo ra kết quả sau trên bảng điều khiển -

Xóa trình nghe từ bên trong hàm bên ngoài trong JavaScript?