JS: Событие сенсорного запуска стилуса не запускается, если палец уже касается экрана - PullRequest
0 голосов
/ 12 сентября 2018

Я хочу проводить мультисенсорные события одновременно с помощью карандаша Apple и пальца в веб-приложении. То, что я хотел бы, это:

  1. Я касаюсь пальцем экрана и удерживаю его, что вызывает событие касания и начала движения;
  2. Я касаюсь экрана карандашом, удерживая палец на экране, что вызывает новое событие сенсорного запуска.

Но второе событие сенсорного запуска никогда не запускается. Я не могу определить, касается ли стилус экрана, если палец уже касается экрана. Я использую фреймворк событий Touch для JavaScript. Вот простой код, который я использую для обнаружения сенсорных событий:

canvas.addEventListener('touchstart', function(evt){
  evt.preventDefault();
  var s = "";
  for (i = 0; i < evt.targetTouches.length; i++){
    s += " Type: "+evt.targetTouches[i].touchType;
  }
  document.getElementById('result').innerHTML = s;
});

canvas.addEventListener('touchmove', function(evt){
  evt.preventDefault();
  var s = "";
  for (i = 0; i < evt.targetTouches.length; i++){
    s += " Type: "+evt.targetTouches[i].touchType;
  }
});

canvas.addEventListener('touchend', function(evt){
  evt.preventDefault();
});

Я также пытаюсь использовать evt.touches вместо evt.targetTouches, но все равно не работает.

...