`
cping
  • 浏览: 31150 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

触屏touchstart 与click事件冲突

 
阅读更多
用phonegap开发android应用,给div加上来滚动的效果:
     	$("#" + id).bind('touchstart', function(event){
    		scrollStartPos = this.scrollTop+event.touches[0].pageY;
    		event.preventDefault();
    	});
    	
    	$("#" + id).bind('touchmove', function(event){
    		this.scrollTop=scrollStartPos-event.touches[0].pageY;
    		event.preventDefault();
    	}); 

这样确实实现了滑动的效果,但是给div里面绑定的click事件不再触发了。
解决办法:
     	$("#" + id).bind('touchstart click', function(event){
    		scrollStartPos = this.scrollTop+event.touches[0].pageY;
    		e.stopPropagation();
    		event.preventDefault();
    	});
    	
    	$("#" + id).bind('touchmove', function(event){
    		this.scrollTop=scrollStartPos-event.touches[0].pageY;
    		event.preventDefault();
    	}); 

这样即实现滚动效果,又保留了click事件。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics