1

コンテンツをフェードアウトし、ページの読み込み時にフェードインすることにより、jQueryでページ遷移を行っていますが、リンクをクリックしてクリック関数を呼び出し、ページの上部に読み込まれたページをリダイレクトするときに問題があります。この動作を防ぐ方法はありますか? これが私のページ遷移のクリック機能です。事前に助けてくれてありがとう!

リンク

<a href="../categories/categories.php"></a>

jQuery

$(".content").fadeIn(750);

$("a").click(function(event){
    event.preventDefault();
    linkLocation = this.href;
    $(".content").fadeOut(500, redirectPage);  
});

function redirectPage() {
    window.location = linkLocation;
}
4

2 に答える 2

1

良い解決策:hashbangsフォールバックで履歴APIを使用する

悪い解決策: 簡単なハックとして、現在のスクロール位置をキャプチャできます

    $(".content").fadeIn(750);
    var offset = window.location.href.match(/offset=(\d+)/)
    if(offset){
       $(document).scrollTop(offset[1])
    }
    $("a").click(function(event){
        event.preventDefault();
        linkLocation = this.href + "?offset="+$(document).scrollTop();//pay 
//special attentions to this line will work only for a link without get parameters. 
        $(".content").fadeOut(500, redirectPage);  
    });

    function redirectPage() {
        window.location = linkLocation;
    }
于 2013-05-14T06:59:05.390 に答える