4

ページが更新されたら、ユーザーが最後にいたタブに戻れるようにしたいと考えています。現在の API ドキュメントでは、タブ選択を行うための Cookie については言及されていません。現在、Cookie を使用してこれを行うにはどうすればよいでしょうか。

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>jQuery UI Tabs - Default functionality</title>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css" />
        <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
        <script src="http://code.jquery.com/ui/1.10.0/jquery-ui.js"></script>
        <link rel="stylesheet" href="/resources/demos/style.css" />
        <script>
            $(function() {
                $("#tabs").tabs();
            });
        </script>
    </head>
    <body>
        <div id="tabs">
            <ul>
                <li><a href="#tabs-1">Nunc tincidunt</a></li>
                <li><a href="#tabs-2">Proin dolor</a></li>
                <li><a href="#tabs-3">Aenean lacinia</a></li>
            </ul>
            <div id="tabs-1">
                <p>Tab 1 text</p>
            </div>
            <div id="tabs-2">
                <p>Tab 2 text</p>
            </div>
            <div id="tabs-3">
                <p>Tab 3 text</p>
            </div>
        </div>
    </body>
</html>
4

3 に答える 3

6

だからここに私が思いついたものがあります。ユーザーがタブをアクティブにすると、選択したタブのインデックスで Cookie が設定されます。タブ ウィジェットが初期化されると、値が Cookie から読み取られてロードされます。これは、Cookie が存在しない場合でも機能しているようで、Cookie が存在する場合にユーザーが最後に選択したタブのみをロードします。

$("#tabs").tabs({
    activate: function( event, ui ) {
        $.cookie("tabs_selected", $("#tabs").tabs("option","active"));
    },
    active: $("#tabs").tabs({ active: $.cookie("tabs_selected") })
});
于 2013-02-07T22:14:20.723 に答える
0
$("#tabs").tabs({ cookie: { expires: 30} });
于 2013-02-07T21:59:34.540 に答える
0

jquery-ui.js ファイルを編集できます

  1. ファイルを開く
  2. 検索するthis.anchors.bind("click.tabs",function(){return!1})}
  3. と置換するthis.anchors.bind("click.tabs",function(){})}

ページを更新すれば問題ありません

于 2014-03-11T20:15:23.353 に答える