使用jQuery选择器 - ScrollTo

时间:2009-07-09 00:15:25

标签: jquery jquery-selectors

我正在使用jQuery ScrolTO插件:http://demos.flesler.com/jquery/scrollTo/在此网站:www.imfrom.me

我有箭头向上和向下导航,截至目前我正在使用:

    $('.down_stream').click(function(){
        $.scrollTo( '#stream', 1500, {easing:'easeOutElastic'} );       
    });

所以点击.down_stream转到#stream,也就是向下箭头,带你去流。我一直在尝试阅读并找出一个jQuery选择器来处理它移动到NEXT段而无需复制/粘贴该片段15次以上的上下移动。

我无法弄明白。每个段都包含在此块中:

<div id="stream" class="box">
        <div class="grid_12 arrow up_home">
            &uarr;
        </div>
        <div class="grid_2"><div class="number-heading">01.</div></div>
        <div class="grid_10">
            <h2 class="content_title">what's been new?</h2>

            <p>Blah blah blah blah...</p>
        </div>
        <div class="grid_12 arrow down_about">
            &darr;
        </div>
    </div><!-- end strean -->

1 个答案:

答案 0 :(得分:0)

不是jQuery专家,但我会给它一个刺。如果我理解正确,那么每次单击向上/向下箭头时都必须更改“#stream”部分。所以每个div都有不同的ID,你需要将这些内容提供给这个小片段以使其滚动?

使用数组和整数var来跟踪在数组中移动的方式。

//initialize the array w/ your 15 div names
var divNames = ["#stream", "#nextDivName", "#andTheNext", "#yetAnotherDivName"];

var index = 0;

function moveUp()
{
  if((index - 1) >= 0){index--;}
  move(index);
}
function moveDown()
{
  if((index + 1) < (divNames.length)){index++;}
  move(index);
}
function move(p_Index)
{
   $.scrollTo( divNames[p_Index], 1500, {easing:'easeOutElastic'} );
}

按钮点击现在调用moveUp()&amp; moveDown()函数。

希望有所帮助。