Jquery tabs - zapamiętywanie otwartych kart

0

Witam ponownie, od razu do rzeczy. Mam problem z zapamiętywaniem otwartych zakładek po przeładowaniu strony, poszperałem po google i znalazłem taki oto kod:

 $("#tabs").tabs({
    select: function(event, ui) {                   
       window.location.replace(ui.tab.hash);
    },
});

Po odświeżaniu strony pozostaje na ostatniej otwartej zakładce, gorzej jak przeładowuję stronę po zmiennej superglobalnej(GET) to powraca mi do pierwszego taba. Ktoś potrafi to rozwiązać?

0
  1. Mógłbyś wrzucić lub opisać coś więcej niż ten mini kod?
  2. Powiedz mi jaka jest różnica między odświeżeniem i przeładowaniem strony?!?

Bez punktu 2 nic ci nie pomogę bo nie rozumiem po co przeładowywać stronę jak używa się jquery i tabów - no chyba że to taby w podstronie a nie menu.

0

To nie jest menu tylko taby w podstronie, taby to są zwykłe divy, przykład biorę ze źródła: http://keith-wood.name/uiTabs.html . Zmienne posiadam w php, więc dlatego po kliknieciu w link, w którym przechowuje superglobalną, chce coś wyswietlic dodatkowego w tym samym tabie, operacja się wykonuje tylko przenosi mnie do pierwszego tabu i muszę wracać do tego konkretnego.

0

ale podmieniasz zawartość ajaxem?

0

zawartość jest w divie, a div przełączam w skrypcie js, tak jak jest w źródle.

0

Po odświeżaniu strony pozostaje na ostatniej otwartej zakładce, gorzej jak przeładowuję stronę po zmiennej superglobalnej(GET) to powraca mi do pierwszego taba

czyli po F5 zostajesz na właściwej zakładce czy co?

czym dla Ciebie jest odświeżenie, czym przeładowanie, bo totalnie niejasno opisujesz

0

po F5 zostaje mi na właściwej zakładce, a po kliknięciu w odnośnik, który znajduje się powiedzmy w content #tab3, zadanie się wykonuje w content, ale przenosi mnie do #tab1, zamiast zostać w #tab3

0

zdefiniuj odnośnik tak, by na końcu miał #tab3, nie wiem jak działają te taby akurat (podobnie chyba wyglądają taby z jQueryUI), ale tamte chyba miały deeplinking

0

Próbowałem na sztywno, ale php to ignoruje i po kliknieciu w odnośnik wyświetla link bez taba.

0

co php ignoruje? pokaz jakis kod

0

Ok, tylko bez bilbiotek, bo one na pewno działają. To co mam na head strony:

$(function() {
	$('article.tabs').tabs();

});
</script>
<script>
$(function() {
$("article.tabs").tabs({
    select: function(event, ui) {                   
       window.location.replace(ui.tab.hash);
    },
});
});

Divy:

<article id="tabs-nested" class="tabs">
	<ul>
		
		<li><a href="#tabs-nested-1">Tab1</a></li>
		<li><a href="#tabs-nested-2">Tab2</a></li>
		<li><a href="#tabs-nested-3">Tab3</a></li>
		
		
	</ul>	 
<div id="tabs-nested-1">
Tekst1
</div>
<div id="tabs-nested-2">
Tekst2
</div>
<div id="tabs-nested-3">
<a href='test1.php?zmienna=".$zmienna."'>Tekst3</a>
</div>

Po kliknięciu w "Tekst3" wykonuje się funkcja w niej zawarta, tylko przeskakuje mi do pierwszego taba. A tak to jak normalnie przełączam sobie taby i odświeżam F5 to pozostaje na tej stronie. Do tego odnośnika próbowałem dodawać na sztywno #tabs-nested-3, czy na końcu, czy tuż po"?", nie wiem jak można jeszcze inaczej to tam wkleić..

0
<a href='test1.php?zmienna=".$zmienna."#dupa'>Tekst3</a>

hashe ZAWSZE NA KOŃCU (nie zrozumiałeś słów "na końcu" czy jak?)

i na przyszłość bądź łaskaw używać tagów <code=NAZWA_JEZYKA>, nie samego <code>

0

Z tym, że człowieku ja takie rozwiązanie brałem pod uwagę i nic z tego, nie działa.

0

boże.

<!DOCTYPE html>
<html>
<head>
    <script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
    <link href="http://code.jquery.com/ui/1.9.2/themes/smoothness/jquery-ui.css" rel="stylesheet" type="text/css" />
    <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
</head>
<body>
<article id="tabs-nested" class="tabs">
    <ul>

        <li><a href="#tabs-nested-1">Tab1</a></li>
        <li><a href="#tabs-nested-2">Tab2</a></li>
        <li><a href="#tabs-nested-3">Tab3</a></li>


    </ul>
    <div id="tabs-nested-1">
        Tekst1
    </div>
    <div id="tabs-nested-2">
        Tekst2
    </div>
    <div id="tabs-nested-3">
        <a href='test1.php?zmienna=dupa#tabs-nested-3'>Tekst3</a>
        <pre>
            <?php var_dump($_GET); ?>
        </pre>
    </div>
</article>
<script>
    $(function() {
        $('article.tabs').tabs();
    });
</script>
<script>
    $(function() {
        $("article.tabs").tabs({
            select: function(event, ui) {
                window.location.replace(ui.tab.hash);
            }
        });
    });
</script>
</body>
</html>

wklej sobie do pliku test1.php i odpal

0

Dzięki bardzo, z tym, że sam popełniałem błąd, bo dawałem do innego odnośnika.. A teraz zadanie z gwiazdką. Powiedzmy, że mam w tab-nested-3 pionowe taby o nazwie tab-nested-left-1,2,3 jak teraz umieścić w linku dwa taby, by się odnosiło do #tab-nested-1&#tab-nested-left-2 <- takim sposobem próbowałem i nic. A jak dam samo na końcu linka #tab-nested-left-1 to przenosi mnie do #tab-nested-1, jak zostało to użyte w #tab-nested-2.

0

nie rozumiem magicznych opisów. kod daj

1 użytkowników online, w tym zalogowanych: 0, gości: 1