Обработчик масштабирования на странице (с / без сенсорной панели) - PullRequest
0 голосов
/ 16 апреля 2019

Цель: Управлять пользовательским увеличением / уменьшением (и иметь некоторую логику для обработки).Я обрабатываю событие wheel, и оно отлично работает с помощью мыши.НО!на Mac с сенсорной панелью событие также генерирует движение масштабирования и прокрутки (да, я понимаю, что это логично)

Вопрос: Как разделить эти события?или любой хороший подход для таких случаев?

У меня есть следующий код:

var val = 1000;

var draw = () => output.innerHTML = val;

draw();

document.body.addEventListener('wheel', (ev) => {
  val = val + ev.deltaY;
  // disabled for SO sandbox
  // console.log('wheel', ev);
  draw();
})

document.body.addEventListener('scroll', (ev) => {
  // console.log('scroll', ev);
})
#output {
  border: 1px solid red;
  width: 300px;
  height: 300px;
  line-height: 300px;
  text-align: center;
}
  <div id="output">
    
    
  </div>

https://jsbin.com/zopujawoze/edit?html,css,js,output

...