以编程方式滑动/滚动jqTouch元素

时间:2011-08-17 12:07:21

标签: javascript scroll jqtouch

我有一个关于jqTouch的简单问题。是否有可能 以编程方式滑动jqTouch对象?

比方说,我有一个100 li元素的ul列表 按时间排序。当我创建这个列表时,我想自动 用当前时间滑到li - 让我们说它在50号位置。如何 我能这样做吗?有可能吗?

例如,在jCarousel中,您可以选择滚动数字并调用.next()。 jqTouch怎么样?是否可能,如果是 - 如何?

1 个答案:

答案 0 :(得分:0)

创建列表时,您可以添加一个类,例如您要滚动到 li 的“currentTime”。然后使用scrollTop函数滚动到 li

的位置
function  scrollToElement(selector,animate) {
    //get the position of the li with class currentTime 
    var pos = $(selector).offset().top;
    if (animate){
        $('html,body').animate({ scrollTop: pos },'slow');
    } else {
        $('html,body').scrollTop(pos);
    }
}

您可以将其绑定到这样的jqtouch页面事件之一。 '#results'是您使用jqTouch导航到的页面。

$(function () {
    $('#results').bind('pageAnimationEnd', function (e, info) {
        if (info.direction === "in" && loadOnce) {
            scrollToElement('li.currentTime',animate)
        }
    });
});

如果您没有使用jqTouch,只需在jquery的文档准备就绪或在列表加载到DOM后的任何其他位置调用它