无论如何使用serialscroll选择/聚焦当前div /元素以进一步编写脚本?

时间:2012-04-15 19:22:51

标签: jquery scrollto serialscroll

我正在构建一个水平滚动的网站,并使用jquery serialscroll进行导航。我已经将页面上的键盘箭头键(左和右)和按钮绑定到使用div标签滚动到下一个元素。效果很好,但我想知道是否有办法为另一个脚本选择/调用当前元素/ div?

基本上,我想绑定上/下箭头,首先按下以展开div,然后再按下(可能再次使用serialscroll)来向上和向下滚动这个div。

如果有人能帮我解决这个问题,我真的很感激。也许serialscroll或scrollto是最好的插件,我欢迎任何替代方案。

当我在第一个网站上工作时,我可能会问很多问题所以请耐心等待。我对jscript的了解是基本的,但我学得很快。提前谢谢。

代码示例:

$('#maincontent').serialScroll({
    items:'#slide',
    prev:'.leftArrow',
    next:'.rightArrow',
    offset:-220,
    start:0,
    duration:500,
    force:false,
    stop:true,
    constant:false,
    lock:false,
    cycle:false,
    easing:'easeOutQuart', 
    jump: true 

});

只是通过更改代码我能够回答我的问题的更新:

var $nav = $('#slideshow li');


$('#maincontent').serialScroll({
    items:'li',
    prev:'.leftArrow, div.logo#logo',
    next:'.rightArrow',
    offset:-220, //when scrolling to photo, stop 230 before reaching it (from the left)
    start:0, //as we are centering it, start at the 2nd
    duration:500,
    force:false,
    stop:true,
    constant:false,
    lock:false,
    cycle:false, //don't pull back once you reach the end
    easing:'easeOutQuart', //use this easing equation for a funny effect
    jump: true, //click on the images to scroll to them
    navigation:$nav,
    onBefore:function(e,el,$p,$i,pos){
    $nav.removeClass('newclass');
    $nav.eq(pos).addClass('newclass')},

});

这允许在当前元素中添加一个新类,我可以使用jscript相应地改变它。

3 个答案:

答案 0 :(得分:1)

我在上面的评论中添加了一个更新,它有助于添加一个类并选择当前元素进行操作。

答案 1 :(得分:0)

由于我看不到代码,所以无法肯定。我之前没有尝试过serialscroll,但是你描述它的方式,我只想设置一些全局变量来包含当前的div。然后,通过outerHeight获取对象的高度,看看它是否已被展开。

添加一个小提琴,也许我可以帮助更多。

答案 2 :(得分:0)

    onBefore: function (e, elem, $pane, $items, pos) {
     $('.item').removeClass('active');
     $('.item').eq(pos).addClass('active');
     },