Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.10.2019, 13:29
Аватар для Nlk
Nlk Nlk вне форума
Кандидат Javascript-наук
Отправить личное сообщение для Nlk Посмотреть профиль Найти все сообщения от Nlk
 
Регистрация: 25.12.2016
Сообщений: 146

Удаление события
Добрый день!

Не получается удалить событие, функция которого является 'тротл'. Подскажите пожалуйста что не так делаю? И как удалить?

function throttle(fn, wait) {
        var time = Date.now();
        return function() {
            if ((time + wait - Date.now()) < 0) {
                fn();
                time = Date.now();
            }
        }
    }

    document.addEventListener("scroll", throttle(showFadeElem, 300), false);
    

    document.removeEventListener("scroll", throttle, false); // не работает
Ответить с цитированием
  #2 (permalink)  
Старый 01.10.2019, 14:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Nlk,
function throttle(fn, wait) {
        var time = Date.now();
        return function() {
            if ((time + wait - Date.now()) < 0) {
                fn();
                time = Date.now();
            }
        }
    }
    var fade = throttle(showFadeElem, 300);
    document.addEventListener("scroll", fade, false);


    document.removeEventListener("scroll", fade, false);
Ответить с цитированием
  #3 (permalink)  
Старый 01.10.2019, 15:05
Аватар для Nlk
Nlk Nlk вне форума
Кандидат Javascript-наук
Отправить личное сообщение для Nlk Посмотреть профиль Найти все сообщения от Nlk
 
Регистрация: 25.12.2016
Сообщений: 146

рони,
спасибо большое!
Ответить с цитированием
  #4 (permalink)  
Старый 01.10.2019, 15:11
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,127

Сообщение от Nlk Посмотреть сообщение
Подскажите пожалуйста что не так делаю?
Вызываешь функцию и возвращенную анонимную функцию передаешь в addEventListener вместо того чтобы передать функцию throttle.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
свойства объекта события Morr123 Элементы интерфейса 4 10.08.2016 06:36
Удаление обработчика события FanAizu Общие вопросы Javascript 3 23.08.2013 18:46
Назначение и удаление события (addEvent) beejuice Общие вопросы Javascript 3 05.08.2013 14:01
Удаление события mousemove DesiresDesigner Events/DOM/Window 5 13.05.2012 21:08
Удаление обработчика события belkir Events/DOM/Window 8 22.09.2011 12:47