jQuery serialScroll / scrollTo next和prev按钮分配给可见元素?

时间:2012-06-28 17:21:54

标签: javascript jquery scrollto serialscroll

我在页面上有一个可见项目,其余项目隐藏在div:hidden中。如果我的下一个和上一个按钮仅与页面上的一个可见项目相关,我希望它。问题是我无法仅选择可见项目。我尝试使用myitem.is(':visible')检查但是它不起作用,因为所有项目都是可见的 - 只是没有通过溢出显示:隐藏。

我试过搞乱类和serialScroll,但是很难让你的头围绕onBefore / onAfter回调。

知道如何使用jQuery,serialScroll或Scrollto选择可见项目吗?

2 个答案:

答案 0 :(得分:1)

检查这个的一种方法是比较元素的位置和div滚动到的位置:

function isVisible(element) {
    var offset = $(element).offset();
    return offset.left + $(element).width() > 0
        && offset.left < $(element).parent().width()
        && offset.top + $(element).height() > 0
        && offset.top < $(element).parent().height();
}

jsFiddle:http://jsfiddle.net/XtAT7/

答案 1 :(得分:0)

最后,我必须学习绕过那些scrollTo回调的方法。这就是我所做的;

$('#scroller').scrollTo(activeprev, 800, {axis:'xy',onAfter: function(elem){
$('.views-row').removeAttr('id','active-row');  
elem.attr('id','active-row');
}}
);

scrollTo插件提供elem选项,可用于将新节点标记为活动。