0

下面是一个简单的手风琴调用,我已经使用了一段时间。Some of the open items contain a lot of text and when another item is chosen I need it to scroll to the selected open item. 我已经尝试过几次使用 scrollTo 的其他帖子的变体,但都没有成功。任何帮助将不胜感激。

$(document).ready(function() {

//ACCORDION BUTTON ACTION (ON CLICK DO THE FOLLOWING)
$('.turn1').click(function() {

    //REMOVE THE ON CLASS FROM ALL BUTTONS
    $('.turn1').removeClass('on');

    //NO MATTER WHAT WE CLOSE ALL OPEN SLIDES
    $('.turn2').slideUp('normal');

    //IF THE NEXT SLIDE WASN'T OPEN THEN OPEN IT
    if($(this).next().is(':hidden') == true) {

        //ADD THE ON CLASS TO THE BUTTON
        $(this).addClass('on');

        //OPEN THE SLIDE
        $(this).next().slideDown('normal');
     } 

 });

 $('.turn2').hide();
 $("#open").trigger('click');
 });

<script type="text/javascript">
$(function(){
    $('.turn1').click(function(){
        $.scrollTo(this)                                                 
    })
});
</script>

我也有这个脚本,它工作得很好,但是在使第一个手风琴项目不跳到第一个手风琴项目所在的页面中间时遇到了麻烦。

<script type="text/javascript">
$("#accord_holder").accordion({
autoHeight: false,
collapsible:true,
navigation:true,
active:false,
change: function(event, ui) {
    $(window).scrollTop(ui.newHeader.position().top - 1);
}
});
 </script>
4

1 回答 1

2

使用 jQuerypositionscrollTop():

<script type="text/javascript">
$(function(){
    $('.turn1').click(function(){
        $("html, body").scrollTop($(this).position().top);
    });
});
</script>
于 2013-08-29T16:08:57.337 回答