0

我有一个钛滚动视图。如果我进行滚动动作,内容会根据我的手指滚动动作的力量而移动。我需要让它始终滚动定义值(即 400 像素)。我怎么能意识到这一点?

我已经尝试过$.scrollTo() and scrollingEnabled = false,但它真的不是那么顺利。

还有其他建议吗?

这里添加 的是类似想法的视频(质量抱歉)

4

1 回答 1

0

如果你想做一种scrollableView,但是是垂直的(用户可以拉动scrollView,如果拉动时间超过一个阈值,scrollView切换到下一个垂直视图,如果没有,scrollView返回到它当前的垂直视图) ,您可以通过使用“滚动”和“拖动”事件来完成。这是一个向下拖动的示例,以及一个具有两个垂直堆叠的 400px 视图的滚动视图:

var scrollView.top = -400; //Size of the view
var threshold = -100; // Threshold to pull for changing view
var changingPageTriggered = false;
var pulling = false;
scrollView.addEventListener('scroll',function(e) {
    var offset = e.y;
    if (offset <= threshold && !pulling) {
        pulling = true;
        changingPageTriggered = true;
    } else {
        pulling = false;
        changingPageTriggered = false;
    }
});
scrollView.addEventListener('dragend',function(e) {
    if (pulling && changingPageTriggered) {
        changingPageTriggered = false;
        pulling = false;
        changePage()
    }
});
function changePage() {
    scrollView.scrollTo(0,-400)
    scrollView.top = 0
}

我在一个项目中使用了类似的东西,但我没有尝试上面的代码。您需要对其进行调整并添加对向上拖动的支持,它应该可以帮助您入门。

于 2013-09-05T15:16:30.343 回答