手指触摸绑定:
1 $(document).on('touchstart', '.photo', function(e){ 2 currentIndex = parseInt($(this).index('.photo'));
if (!timeoutEvent) 3 timeoutEvent = setInterval("longPress()", 500);//如果是给类元素绑定长按,必须没有定时器的时候再生成定时器 4 e.preventDefault(); 5 }) 6 $(document).on('touchmove', '.photo', function(e){ 7 }) 8 $(document).on('touchend', '.photo', function(e){ 9 clearInterval(timeoutEvent); 10 timeoutEvent = 0; 11 e.preventDefault(); 12 })
触发函数:
function longPress() { clearInterval(timeoutEvent); alert('长按'); })
1、利用定时器很方便的进行相应长按触发
2、用setInterval不用setTimeout,是e.preventDefault的这里的一个问题,组织默认事件行为会影响setTimeout而不会影响setInterval。