1

私は素敵なアドレスプラグインを実装して、よりきれいなリンクと戻るボタンの使用のための内部リンクを処理しようとしています。私はなんとかそれを機能させましたが、私が気づいたことの1つは、ユーザーがそのURLをコピーして新しいウィンドウで開こうとした場合(または送信友達に)、ページのそのセクションにユーザーを連れて行くことはありません。明らかに、もうアンカーとして認識されていないためです。

ユーザーが URL を介して移動したときに、正しいセクションに表示するにはどうすればよいですか?

以下は、jQuery Address に従って使用しているコードのスニペットです。

$('nav a').click(function() { 
    var pageTitle = 'Kevin Dare Foundation | ' + $(this).html(); 
    $.address.value($(this).attr('href').replace(/^#/, ''));
    $.address.title(pageTitle);
});

また、実際の動作を確認するためのリンクは次のとおりです: http://nickdimatteo.com/kjd

4

1 に答える 1

1

最も簡単な方法は、document.location.hash がある場合にドキュメントが読み込まれたときにコードをトリガーすることです。

$('nav a').click(function() { 
    var pageTitle = 'Kevin Dare Foundation | ' + $(this).html(); 
    $.address.value($(this).attr('href').replace(/^#/, ''));
    $.address.title(pageTitle);
});

$(document).ready(function() {
    var hash = document.location.hash.replace(/^#\//, '');
    if(hash) {
        $('nav a[href="#' + hash + '"]').trigger('click');
    }
});
于 2011-12-22T18:36:23.363 に答える