Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Panel w JS + ciasteczka, zapamiętywanie konfiguracji użytkownika
onlyX
post
Post #1





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 15.07.2003
Skąd: Grajewo

Ostrzeżenie: (0%)
-----


Mam panel-tabelę z chowanymi elementami za pomocą JS:
  1. <script type="text/javascript">
  2. function showHidden(obj){
  3. obj = document.getElementById(obj);
  4. obj.style.display == 'none' ? obj.style.display = '' : obj.style.display = 'none';
  5. }
  6. function over(obj){
  7. obj = document.getElementById(obj);
  8. obj.style.backgroundColor = '#CCCCCC';
  9. }
  10. function out(obj){
  11. obj = document.getElementById(obj);
  12. obj.style.backgroundColor = '#454545';
  13. }
  14. </head>
  15. <table width="210" cellspacing="0" cellpadding="0" border="0">
  16.  
  17. <tr><td id="pan1" class="panel_nav" onmouseover="over('pan1');" onmouseout="out('pan1');" onclick="showHidden('show1');">&raquo; Nagłówek</td></tr>
  18. <tr id="show1" style="display:none;"><td class="panel_con">
  19. Zawartość</td></tr>
  20.  
  21. <tr><td class="panel_nav" onclick="showHidden('show2');">&raquo; Nagłówek</td></tr>
  22. <tr id="show2" style="display:none;"><td class="panel_con">
  23. Zawartość
  24. </td></tr>
  25.  
  26. <tr><td class="panel_nav" onclick="showHidden('show3');">&raquo; Nagłówek</td></tr>
  27. <tr id="show3" style="display:none;"><td class="panel_con">
  28. Zawartośc</td></tr>


Chciałbym rozbudować go o możliwość zapamiętywania wyborów uzytkownika (które panele zamknięte, a które otwarte). Z tym, że nie wiem jak do tego się zabrać.
Chciałbym, żeby cała konfiguracja była przechowywana w jednym cistku (może w tablicy) i w przypadku nieznalezienia ciastka, uzywana była domyślna konfiguracja. Może będzie całkowicie przebudować kod (atrybuty id, style i funkcje js). Moja wiedza o JS jest narazie zbyt uboga, żeby zrobic to samemu. Może moglibyście wskazać mi jakies przykłady, artykuły, bądź poddać pomysły.

Z góry dziękuję za jaką kolwiek pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Draugfor
post
Post #2





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 13.07.2003
Skąd: Torun/Poznan

Ostrzeżenie: (0%)
-----


Leniu Ty. 8)
Cookies: http://www.hotscripts.com/JavaScript/Scrip...kies/index.html
na skroty: http://scripts.franciscocharrua.com/javascript_cookies.php

No i pare funkcji:
Kod
<script type="text/javascript">
<!--

var showCount=3;
var showStatus=new Array(showCount);

//Status paneli zostaje zapisany w tabeli
function panelsStatus2Table()
{
    if(!document.getElementById)return;

    for(var i=0;i<showCount;i++)
  if(document.getElementById("show"+(i+1)).style.display=="none")
     showStatus[i]=0;
  else
     showStatus[i]=1;
}

//Status paneli zostaje ustawiony wg danych w tabeli
function table2PanelsStatus()
{
    if(!document.getElementById)return;

    for(var i=0;i<showCount;i++)
  if(showStatus[i]==0)document.getElementById("show"+(i+1)).style.display="none";
  else document.getElementById("show"+(i+1)).style.display="block";
}

//Pokaz/schowaj zawartosc
function showHidden(id)
{
    if(!document.getElementById)return;
    
    element=document.getElementById(id);
    if(element.style.display=="none")
  element.style.display="block";
    else
  element.style.display="none";
}

//-->
</script>


I jak?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 12:54