Лучший метод, который я нашел, это проверить положение точки касания в вашем обработчике сенсорного перемещения.Когда создается точка прикосновения (при запуске прикосновения), она добавляется в массив, называемый «прикосновения».Эти точки касания могут быть доступны по индексу (порядок, в котором они были добавлены).Затем вы можете получить доступ к координатам x и y из этой точки, чтобы определить, находится ли он все еще в границах элемента, который вы наблюдаете.Допустим, у меня есть div с именем «myDiv», и я хочу определить, когда палец пользователя вытаскивается из него изнутри.
var myDiv = document.getElementById('myDiv');
myDiv.addEventListener('touchmove', function(event){
var currentElement = document.elementFromPoint(event.touches[0].clientX, event.touches[0].clientY);
if (currentElement.id !== 'myDiv'){
console.log('finger has moved outside of element');
}
}, false);
Поэтому, когда мы перемещаем наш палец, мы фиксируем элемент, который в данный момент находится на нем.с функцией document.elementFromPoint (), передавая координаты x и y, собранные из касания, сохраненного в массиве касаний, с индексом 0 (дополнительные касания будут добавлены в массив с индексами 1, 2, 3 и т. д.),Наконец, мы проверяем, совпадает ли этот захваченный элемент, в котором находится наш палец, с «myDiv».Если это не так, мы знаем, что палец был убран с этого элемента.