Что происходит с зависшими событиями, когда уничтожается элемент DOM? - PullRequest
0 голосов
/ 24 января 2019

Полагаю, это не лучший заголовок, но я не могу описать более подробно в нескольких словах.

Итак, у меня возникла проблема, которую я хотел бы понять. Надеюсь, что вы можете помочь.

Допустим, у меня есть два элемента div в моем окне, и я присоединяю оба touchstart и touchend к объекту окна. В случае touchstart я заменяю эти div на те же самые. Это приводит к тому, что touchstart запускается всегда, как и должно быть, но не touchend событие.

Может кто-нибудь объяснить, почему это произошло? Как я уже сказал, я присоединяю оба события к окну, а не к самим объектам.

Я уже пытался изменить привязку события к родительскому элементу (.root), но безуспешно. Уже пробовал с mouseup и mousedown, но оба работали нормально.

Вот демоверсия .

(Чтобы проверить это, откройте devtools в режиме устройства и нажмите на div)

...