3 Stimmen

Erinnern Sie sich, dass Sie auf der Website einen Tab gedrückt haben

Ich habe meine eigenen Tabs mit Hyperlinks und Divs erstellt. Ich platziere sie in der Seitenleiste.

Ich verwende jquerys .show() und hide() auf relevanten Divs, wenn ein Hypelink angeklickt wird.

Es funktioniert gut, aber ich möchte, dass der zuletzt angeklickte Link/Tab auf der gesamten Website gespeichert wird, wenn der Benutzer navigiert.

Wie kann ich das tun?

3voto

Philip Schweiger Punkte 2694

Am besten verwenden Sie ein Cookie, um den Namen der aktiven Registerkarte zu speichern. Prüfen Sie dann beim Laden der Seite das Cookie mit JS und verwenden Sie es als Grundlage für die Anzeige der richtigen Registerkarte und das Ausblenden der anderen.

Ich empfehle das jQuery-Cookie-Plugin zum Setzen und Auslesen von Cookies: http://plugins.jquery.com/project/Cookie

Ihr Code könnte etwa so aussehen (schnelle Skizze, daher möglicherweise nicht frei von Syntaxfehlern):

MARKUP

<ul id="tabs">
  <li id="tab-a">First tab</li>
  <li id="tab-b">Second tab</li>
  <li id="tab-c">Third tab</li>
</ul>

JAVSCRIPT

//On Window load:
if ($.cookie('activetab')) {
  var activetabId = $.cookie('activetab');
  $('#tabs li').removeClass('active');
  $('#'+activetabId).addClass('active');
}

//On tab click
$('#tabs li')click(function(){
 var id =  $(this).attr('id');
 $.cookie('activetab',id);
});

2voto

tiagoboldt Punkte 2426

Dazu können Sie ein Cookie verwenden (eine Information, die im Browser für eine bestimmte Website gespeichert wird). Dieses Cookie könnte die aktuell geöffnete Registerkarte speichern.

Es gibt einen schönen Leitfaden in http://www.electrictoolbox.com/jquery-cookies/

2voto

StefanS Punkte 886

Sie könnten die ID der zuletzt angeklickten Registerkarte in der Seitenleiste speichern. z.B.:

$("#sidebar").data("lastClickedTab", $("#theTab")[0].id);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X