2

私はこのコードを使用しています:http://askmike.org/2011/12/smooth-page-transitions-using-jquery-video/私のページに。

以下は、Javascript用に変更したコードです。

$(function() {
    var request = window.location.hash;
    if(request == '#page-2') {
        $('.page.current').removeClass('current');
        $('.page').eq(1).addClass('current');
    }
        if(request == '#page-3') {
        $('.page.current').removeClass('current');
        $('.page').eq(2).addClass('current');
    }
        if(request == '#page-4') {
        $('.page.current').removeClass('current');
        $('.page').eq(3).addClass('current');
    }
    $('nav a').click(function(){
        var speed = 200;
        var i = $(this).index();
        $('.page.current').animate({opacity: 0, marginTop:0},speed,function(){
            $(this).removeClass('current');
            $('.page').eq(i).css('marginTop',30).animate({opacity:1,marginTop: 0},speed).addClass('current');
        });
    });
});

リンクを順序付けられていないリストに入れると、表示するdivがわかりなくなります。私はコードを借りているだけなので、Javascriptの専門家ではありませんが、リストに入れることで、コードがどちらを順番に並べているかを知ることができないと推測しています(それが理にかなっている場合)。どんな助けでも大歓迎です。これがjsFiddleです:http://jsfiddle.net/YUH6s/1/ありがとう

4

1 に答える 1

1

アンカーリンクのマークアップインデックスには常にが0あり、eqメソッドは最初の.page要素のみを選択します。代わりに、親li要素のインデックスを見つけることができます。

変化する:

$(this).index()

に:

$(this).parent().index()

http://jsfiddle.net/Xht3v/

于 2012-09-15T22:37:15.433 に答える