0

我在 ul 的 li 之间使用拖放。代码在桌面版上运行良好。

<ul>
 <li> A </li>
 <li> A </li>
 <li> C </li>
 <li> D </li>
 <li> E </li>
</ul>

但是对于移动版本,我得到了多点触控

li.addEventListener('touchstart', touchStart);
li.addEventListener('touchmove', touchMove);
li.addEventListener('touchend', touchEnd);

在此处输入图像描述

这就是为什么我无法获得正确的元素的原因。如何在手机中获得正确的最后触摸元素?

4

1 回答 1

1

发布如何将事件侦听器添加到 li 元素。并考虑下面的代码

var li=document.querySelectorAll('li');
	
	for(var i=0;i<li.length; i++){

	  li[i].addEventListener('touchstart', function(e){
			console.log('Start '+e.target.id);
			});
	
		li[i].addEventListener('touchmove', function(e){
			console.log('Move '+e.target.id);
			});

		li[i].addEventListener('touchend', function(e){
			console.log('End '+e.target.id);
			});			
	}
<ul>
  <li  id='li1'>One</li>
  <li id='li2'>Two</li>
  <li id='li3'>Three</li>
  <li id='li4'>Four</li>
</ul>

于 2019-12-29T07:20:24.200 回答