1

現在開発中の Web サイトにタブ付きセクションがあり、各タブに固有の URL と履歴サポートを有効にしたいと考えています。

jQuery Address プラグインが適しているようですが、実装に問題があります。URL を割り当てて、アドレス バーを変更できます。戻るボタンは URL をトラバースしますが、実際にはタブを変更しません。

Address のドキュメントは良くありません。ある種のイベントリスナーが欠けていると思いますが、それを初期化する方法や何に適用すればよいかわかりません。

ここに私のJSがあります

$('.sm-tab').click(function() {
    $.address.value($('a', this).attr('href'));
    smReset();
    $('#sm-tabs').find('.active').each(function() {
        $(this).removeClass('active');
        $(this).addClass('inactive');
    });
    $(this).removeClass('inactive');
    $(this).addClass('active');
    var smClassArray = $(this).attr('class').split(" ");
    var smDivClass = smClassArray[1];
    $('#'+smDivClass).show();
});

私のHTMLは次のようになります

<div id="sm-tabs">
    <div class="sm-tab inactive twitter">
        <span class="twitter sprite-sm-twitter"><a href="?tab=twitter" class="hidetext">Twitter</a></span>
    </div>
    <div class="sm-tab inactive youtube">
        <span class="youtube sprite-sm-youtube"><a href="?tab=youtube" class="hidetext">YouTube</a></span>
    </div>
</div>

<div id="sm-widgets">
    <div id="twitter">
        Content
    </div>
    <div id="youtube">
        Content
    </div>
</div>
4

1 に答える 1

1

ajax ナビゲーションにハッシュを使用すると、ワームの缶全体にさらされることになります。

代わりに HTML5 History API を使用するこのディープリンク スクリプトを試してください。

于 2011-08-18T00:23:00.967 に答える