javascript touchmove event.target不更新

时间:2018-10-23 14:41:23

标签: javascript google-chrome mobile drag touchmove

我正在尝试创建一个用户必须拖动才能选择多个项目的应用程序, 这在台式机上可以正常工作,但是当我尝试在Android手机(在chrome上)上实现它时,它突然坏了。

我正在将eventListener用于touchmove事件,当函数获取此事件时,它将获取event.target并从该元素获取一些数据(属性)。

但是由于某种原因,即使我将event.target拖动,它也不会更新:

  1. 将事件添加到父项(正文)

  2. 将事件添加到孩子(div,#a,#b,#c)

我添加了一个日期和x,以确保在拖动时触发该事件,情况就是如此,并且效果很好。

但是现在我完全不知道event.target变量不会更新。

预先感谢

<style>
  div {
    position: relative;
    float: left;
    width: 30vw;
    height: 100vh;
    border: 1px solid red;
    font-size: 50px;
  }
</style>

<script type="text/javascript" src="/JS/jQuery.js" asy nc></script>

<div id="a"></div>
<div id="b"></div>
<div id="c"></div>


<script>

  document.body.addEventListener("touchmove", function (_e) {
    $("#a")[0].innerHTML = "moving<br>" + _e.target.id + " <br>" + new Date().getSeconds();
    $("#b")[0].innerHTML = _e.changedTouches[0].pageX;
  });

  document.body.addEventListener("touchend", function (_e) {
    $("#a")[0].innerHTML = "stop";
  });


</script>

0 个答案:

没有答案