为了账号安全,请及时绑定邮箱和手机立即绑定

zepto.js 下单次swipeUp 事件,貌似连续触发了多次

远人老师您好,

    我昨天晚上看完了您的代码,想把代码改造成滑动组件,但是却遇到了一个问题。请看以下代码:

<!DOCTYPE html>
<html>
 <head>
    <title>modification_05.2_demo</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
	<script src="zepto.min.js"></script>
	<script type="touch.js"></script><!--delet-->
	<link href="animate.css" rel="stylesheet" type="text/css">
	<style>
	   	blockquote, body, button, dd, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, hr, input, legend, li, ol, p, pre, td, textarea, th, ul,img{
			margin: 0;
			padding: 0;
		}
	   	body{
	   		background:#c8161e;
	   		overflow:hidden
	   	}
	   	ul{
	   		list-style:none
	   	}
	   .clearfix:after{
	   		display: block; content: "\20"; height: 0; clear: both; overflow: hidden; visibility: hidden;
	   		}/*ie8ÒÔÉÏ*/
	   .img-container li img{}
	   img{
	   		width: 100%
	   	}
	   .img-container li {
	   		overflow:hidden;
	   	}
	</style>
</head>
<body>
	<ul class="img-container clearfix" id="container"></ul>

	<script>
	var total = 20;
	var i = 1;
	var num = 1;

	var tmpl ='<li data-id="'+i+'" class="animated bounceIn"><img src="img/'+i+'.jpg"></li>';
	$('#container').html(tmpl);	
	
	$('#container').delegate('li','swipeUp',function(){
		$('#container').swipeUp(function(){
			if(num>total){
				num = total;
			}else{
				num++;
			}
			console.log('num: '+num);
			var tmpl_2 = '<li data-id="'+num+'" class="animated bounceIn"><img src="img/'+num+'.jpg"></li>';
			$('#container').html(tmpl_2);
		})	
	});
	</script>
</body>
</html>

    直接把该代码放进源代码的根目录即可运行。

    现在的问题是,当我向上滑动一次图片,num应该是直接 +1,但每次滑动的实际变化却是 +0、+1、+2、+3、+4...

    我在console下查看num是正常的+1,不过后一次会比前一次多触发一次事件;

    所以我想麻烦老师您debug一下。

正在回答

2 回答

Uncaught TypeError: $(...).swipeUp is not a function 怎么解决?

0 回复 有任何疑惑可以回复我~
#1

慕粉3349066

可能是$冲突了,用Zepto(...).swipeUp试试
2016-05-12 回复 有任何疑惑可以回复我~

您好,我想问一下为什么我的swipeUp和swipeDown在手机测试不成功??

0 回复 有任何疑惑可以回复我~
#1

tq2014

document.addEventListener('touchmove', function (event) { event.preventDefault(); }, false);加上这句就好了
2015-03-17 回复 有任何疑惑可以回复我~
#2

口弦。 回复 tq2014

加到哪里啊
2015-08-27 回复 有任何疑惑可以回复我~
#3

keybum 回复 tq2014

加这句后,页面不能滚动了,是什么原因
2016-05-23 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
移动端的WEB相册
  • 参与学习       47967    人
  • 解答问题       217    个

本课程通过一个移动端相册案例,带您一步步了解移动端框架

进入课程

zepto.js 下单次swipeUp 事件,貌似连续触发了多次

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信