jquery mousewheel: обнаружение, когда колесо останавливается?

Я использую плагин Jquery mousewheel , и я хотел бы иметь возможность определять, когда пользователь закончил использовать колесо. Функциональность, аналогичная остановке: событие в перетаскиваемом материале. Может кто-нибудь указать мне правильное направление?

20
задан Moustard 18 August 2010 в 18:35
поделиться

1 ответ

На самом деле здесь нет события "стоп" - вы получаете событие, когда выполняете прокрутку, поэтому каждый раз, когда происходит событие колеса мыши, событие запускается ... когда есть ничего, вы не получите никаких событий, и ваш обработчик не будет стрелять.

Однако вы можете определить, когда пользователь не использовал его, скажем, за 250 мс, например:

$("#myElem").mousewheel(function() {
  clearTimeout($.data(this, 'timer'));
  $.data(this, 'timer', setTimeout(function() {
     alert("Haven't scrolled in 250ms!");
     //do something
  }, 250));
});

Вы можете попробовать его здесь , все, что мы делаем, это сохраняем тайм-аут при каждом использовании при использовании $. Data () , если вы снова воспользуетесь им до истечения этого времени, он будет очищен ... если нет, то любой код, который вы хотели запустить, сгорит, пользователь «закончил», используя колесо мыши для какой бы период времени вы ни тестировали.

37
ответ дан 29 November 2019 в 23:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: