s4.addEventListener("touchstart", touchStart4, false);
s4.addEventListener("touchmove", touchMove4, false);
s4.addEventListener("touchend", touchEnd4, false);
var v4 = 0;
function touchStart4(event,target) {
//event.preventDefault();
var touch = event.targetTouches[0]; //位于当前DOM元素上的手指的一个列表
startY = touch.pageY;
moveY = 0;
}
function touchMove4(event) {
//event.preventDefault();
var touch = event.touches[0];
moveY = touch.pageY - startY;
}
function touchEnd4(event) {
if($(document).scrollTop() == 0){
v4 = 1; //top
}else if($(document).scrollTop() == $(document).height() - $(window).height()){
v4 = 2; //bottom
}else{
v4 = 0;
}
if(moveY < 0 && v4 == 2){ //当滑到底部的时候
$('#s5').css('top','100%');
$('#s5').css('display','block');
$('#s5').animate({
top:0
},500,function(){
an5_in();
$('#nav').hide();
});
$('#s4').animate({
top:'-100%'
},500);
$('#s4').css('display','none');
}else if(moveY > 0 && v4 == 1){ //当滑到顶部的时候
$('#s3').css('top','-100%');
$('#s3').css('display','block');
$('#s3').animate({
top:'0'
},500,function(){
an3_in();
$('#nav').hide();
});
$('#s4').css('display','none');
}
}
我想要实现的功能是,当该页(这一页的内容超过一屏的,所以可上下滑动滚动)到达顶部的时候,再滑动一下,就会跳到上一页,如果到达了顶部,再滑动一下,就到达下一页。
为什么touchend这里就没有反应了呢?
在touchend4第一行添加一个日志,确认这个函数没有触发?估计应该是触发了,但不满足你的逻辑。######加入了,没有打印出日志。所以应该是完全touchend是无效的。###### 你的测试环境是什么?chrome?
######手机测试,微信里的扫一扫后测试。还在手机猎豹哦浏览器测试,一样是无效的。######。。。这个没有遇到过,不理解,我没有方向了。######如果在touchmove中的preventdefault没有注释掉的话,就可以。但是另外一些问题又会出现
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。