87,994
社区成员
发帖
与我相关
我的任务
分享
$('#b1').click(function () {
$(".contain2").finish();//立即完成动画
if ($('.contain2').scrollLeft() < scrolled) {
var doit = $('.contain2').scrollLeft() + 191 + 'px';
$('.contain2').animate({ scrollLeft: doit }, { speed: 'slow' });
}
});
$('#b2').click(function () {
$(".contain2").finish();//立即完成动画
if ($('.contain2').scrollLeft() > 0) {
var doit = $('.contain2').scrollLeft() - 191 + 'px';
$('.contain2').animate({ scrollLeft: doit }, {speed:'slow'});
}
});
问题解决,但是新问题是动画立即结束,体验不好。
方法二
;(function animation(){
$('#b1').one("click",function () {
if ($('.contain2').scrollLeft() < scrolled) {
var doit = $('.contain2').scrollLeft() + 191 + 'px';
$('.contain2').animate({ scrollLeft: doit },function(){
animation();
});
}
});
})()
;(function animation(){
$('#b2').one("click",function () {
if ($('.contain2').scrollLeft() > 0) {
var doit = $('.contain2').scrollLeft() - 191 + 'px';
$('.contain2').animate({ scrollLeft: doit },function(){
animation();
});
}
});
})()
没有任何问题,就是点击事件只绑定一次,双击也没有效果,只有第一次点击动画完毕后才会重新绑定点击事件
