0

How to remove event listener which is a method of exisiting object? I have a code like this in main.js

loadSite = new LoadSite(
      'js/options.js',
      'pages/options.html',
       containerMain,
      'options-wrapper'
     );

  options.addEventListener(
   'click',
   function () {
     loadSite.loadSite();
   },
   false
   );

And I want to remove this listner in another module. I tried write this:

   import { LoadSite } from './classes/LoadSite.js';
(() => {
  const options = document.querySelector('.options'),
    loadSite = new LoadSite(
      'js/options.js',
      'pages/options.html',
      containerMain,
      'options-wrapper'
    );
  options.removeEventListener('click', function () {
    loadSite.loadSite;
  });
})();

But it didn't work and I don't know how to make this. Can someone help me?

0

1 Answer 1

2

To remove a listener you need to pass the same listener which you registered during add.

function listener() {
     loadSite.loadSite();
   }
options.addEventListener('click', listener, false);
options.removeEventListener('click', listener, false);

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.