Ze strony leniwce.com pobrałem klasę do zakładek.
  1. <?php
  2. /*
  3.  * Created on 2009-08-10
  4.  * Autor: Bartosz Lewandowski
  5.  * <a href="http://www.leniwce.com" target="_blank">http://www.leniwce.com</a>
  6.  * bartek@leniwce.com
  7.  */
  8.  
  9. class Tabs
  10. {
  11. var $headers="";
  12. var $contents="";
  13. var $counter=0;
  14. var $name = "";
  15. var $selectors = "";
  16.  
  17. public function Tabs($name)
  18. {
  19. $this->name = $name;
  20. }
  21.  
  22. public function addTab($text, $body)
  23. {
  24. $this->counter++;
  25. $this->headers .= "<div id='".$this->name."_tab".$this->counter."' class='tabInactive'>".$text."</div>";
  26. $this->contents .= "<div class='tabContent' id='".$this->name."_tab".$this->counter."Content'>".$body."</div>";
  27. $this->selectors .=",#".$this->name."_tab".$this->counter;
  28. }
  29.  
  30. public function show()
  31. {
  32. if (strlen($this->selectors)>0) $this->selectors[0] = " ";
  33. echo "<div>";
  34. echo "<div class='tabHeaders' id='".$this->name."_tabHeaders'>".$this->headers."</div>";
  35. echo "<div id='".$this->name."_pages' class='tabPages'>";
  36. echo $this->contents;
  37. echo "</div>";
  38. echo "</div>";
  39. echo "<script type=\"text/javascript\">";
  40. echo "$(document).ready(function()";
  41. echo "{";
  42. echo "$(\"#".$this->name."_pages\").find(\"div\").hide();";
  43. echo "$(\"#".$this->name."_tab1\").addClass(\"tabActive\");";
  44. echo "$(\"#".$this->name."_tab1Content\").show(); ";
  45.  
  46.  
  47. echo "$(\"".$this->selectors ." \").click(function()";
  48. echo "{";
  49. echo "var oldTab = \"#\"+ $(\"#".$this->name."_tabHeaders\").find(\".tabActive\").attr(\"id\");";
  50. echo "$(oldTab).removeClass(\"tabActive\");";
  51. echo "$(this).addClass(\"tabActive\");";
  52. echo "var newTab =\"#\"+$(this).attr(\"id\")+\"Content\";";
  53. echo "$(oldTab+\"Content\").hide();";
  54.  
  55. echo "$(newTab).fadeIn();";
  56. echo "});";
  57. echo "});";
  58. echo "</script>";
  59.  
  60. }
  61. }
  62.  
  63. //używam to tak
  64. $a = '<div class=dodano>joko</div>';
  65.  
  66.  
  67. $tabs = new Tabs("demo");
  68. $tabs->addTab("Zadania",$a);
  69. $tabs->addTab("Aktywne",$a);
  70. $tabs->addTab("Nieaktywne",$a);
  71. $tabs->show();
  72.  
  73. ?>

niestety nie pokazuje mi niczego co ujmę w divy.
Próbowałem tak:
  1. //poniższe wyświetli mi tylko tego diva
  2. echo "$(\"div.dodano\").show(); ";
  3. //tego juz nie wyświetli tzn wyświetli tylko to co jest w 1 divie
  4. $a = '<div class=dodano>joko1
  5. <div class=elo>joko2</div>
  6. </div>';
  7.  

dlaczego tak się dzieje?