![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 140 Pomógł: 0 Dołączył: 11.09.2006 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
Witam
mam kod do ukrycia pewnego div-a (swoją drogą znaleziony u Was) wszystko działa pięknie ale niestety po przejściu na inną stronę i powrocie to wszystko wraca do stanu początkowego a ja potrzebuje aby to co zostało ustawione było zapamiętane. zapewne trzeba użyć ciasteczek. prosze o pomoc i modyfikacje kodu: z góry dzieki. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 19.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze teraz nad tym myślałem trochę, więc wygląda nieco inaczej, niż przedstawiłem w pierwszym poście. A więc tak ( zdania nie rozpoczyna się od 'a więc' (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ):
Tworzysz funkcję pokazUkryj, z parametrem id, itd: Kod function pokazUkryj(id) { var stan = (document.getElementById(id).style.display == "none"); document.getElementById(id).style.display = stan ? "block" : "none"; zapiszCiastko(id, !stan); } Pobiera stan elementu, czyli sprawdza czy element jest niewidoczny. Następnie zmienia ten stan i zapisuje już zmieniony do cookies ( stąd ten wykrzyknik w funkcji zapiszCiastko). Czyli zapisuje true, jeśli element nie jest widoczny albo false, jeśli jest widoczny. Odczytywanie wygląda zaś tak. Tworzysz funkcję, która wczytuje zapisany stan i na jego podstawie decyduje, czy element ma być widoczny, czy ukryty. Kod function odczytajStan(id){ var stan = odczytajCiastko(id); document.getElementById(id).style.display = stan ? "block" : "none"; } No i funkcja ładująca się na starcie: Kod window.onload = function(){ var id = "id_elementu_ktory_ma_miec_wczytany_stan_na_starcie"; odczytajStan(id); } Jeśli jest wiele takich elementów, to no problem, użyj tablicy: Kod window.onload = function(){ var elementy = ["elem1", "elem2", "elem3"]; for (var i = 0; i < elementy.length; i++) odczytajStan(elementy[i]); } Pisane z palca, więc mogą być pewne błędy, ale ogólnie idea jest właśnie taka (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował kubarek 6.04.2008, 20:28:04 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 07:12 |