Aufklappbares Menü

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Upss... ja natürlich das meine ich JavaScript!

    Dies ist eine Java +CSS Lösung!

    Bitteschön

    Quellcode

    1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    2. <html xmlns="http://www.w3.org/1999/xhtml">
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    5. <title>Navi Loesung</title>
    6. <script language="javascript">
    7. var timeout = 500;
    8. var closetimer = 0;
    9. var ddmenuitem = 0;
    10. // open hidden layer
    11. function mopen(id)
    12. {
    13. // cancel close timer
    14. mcancelclosetime();
    15. // close old layer
    16. if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
    17. // get new layer and show it
    18. ddmenuitem = document.getElementById(id);
    19. ddmenuitem.style.visibility = 'visible';
    20. }
    21. // close showed layer
    22. function mclose()
    23. {
    24. if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
    25. }
    26. // go close timer
    27. function mclosetime()
    28. {
    29. closetimer = window.setTimeout(mclose, timeout);
    30. }
    31. // cancel close timer
    32. function mcancelclosetime()
    33. {
    34. if(closetimer)
    35. {
    36. window.clearTimeout(closetimer);
    37. closetimer = null;
    38. }
    39. }
    40. // close layer when click-out
    41. document.onclick = mclose;
    42. </script>
    43. <style type="text/css">
    44. <!--
    45. #sddm
    46. { margin: 0;
    47. padding: 0;
    48. z-index: 30}
    49. #sddm li
    50. { margin: 0;
    51. padding: 0;
    52. list-style: none;
    53. float: left;
    54. font: bold 11px arial}
    55. #sddm li a
    56. { display: block;
    57. margin: 0 1px 0 0;
    58. padding: 4px 10px;
    59. width: 60px;
    60. background: #5970B2;
    61. color: #FFF;
    62. text-align: center;
    63. text-decoration: none}
    64. #sddm li a:hover
    65. { background: #49A3FF}
    66. #sddm div
    67. { position: absolute;
    68. visibility: hidden;
    69. margin: 0;
    70. padding: 0;
    71. background: #EAEBD8;
    72. border: 1px solid #5970B2}
    73. #sddm div a
    74. { position: relative;
    75. display: block;
    76. margin: 0;
    77. padding: 5px 10px;
    78. width: auto;
    79. white-space: nowrap;
    80. text-align: left;
    81. text-decoration: none;
    82. background: #EAEBD8;
    83. color: #2875DE;
    84. font: 11px arial}
    85. #sddm div a:hover
    86. { background: #49A3FF;
    87. color: #FFF}
    88. -->
    89. </style></head>
    90. <body>
    91. <ul id="sddm">
    92. <li>
    93. <a href="#" onmouseover="mopen('m1')" onmouseout="mclosetime()"><img src="../olaf/images/berichte.jpg" /></a>
    94. <div id="m1" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
    95. <a href="#">HTML Drop Down</a>
    96. <a href="#">DHTML Menu</a>
    97. <a href="#">JavaScript DropDown</a>
    98. <a href="#">Cascading Menu</a>
    99. <a href="#">CSS Horizontal Menu</a>
    100. </div>
    101. </li>
    102. <li>
    103. <a href="#" onmouseover="mopen('m2')" onmouseout="mclosetime()"><img src="../olaf/images/berichte.jpg" /></a>
    104. <div id="m2" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
    105. <a href="#">HTML Drop Down</a>
    106. <a href="#">DHTML Menu</a>
    107. <a href="#">JavaScript DropDown</a>
    108. <a href="#">Cascading Menu</a>
    109. <a href="#">CSS Horizontal Menu</a>
    110. </div>
    111. </ul>
    112. </body>
    113. </html>
    Alles anzeigen
    --Kommt noch--
  • Ok, das sieht ja eigentlich gar nicht schlecht aus. An welchen Stellen sollen denn deine Buttons erscheinen? Eigentlich sollte sich alles über CSS regeln lassen.

    Die Bilder auf dem Menü kannst du ja direkt ändern, indem du das Bild berichte.jpg austauschst. Wenn du an den einzelnen Untermenüpunkten noch Bilder haben willst, wird das etwas komplizierter, ist aber auch nicht unmöglich.

    Sag erst einmal was du erreichen willst...
  • Wie wär s ohne Javascript, also nur mit CSS?

    Wenn s dich interessiert, dann schau dir des mal an
    (Ich hoff, dass ich nix vergessen hab)

    Nutzt hover aus. Damit es im IE auch ohne Probleme funktioniert, klatscht du das in dein Stylesheet
    (csshover.htc is als Dateianhang dabei)

    Quellcode

    1. /* Browserweichen für Body Element (nur für IE-Versionen) */
    2. * html > body {
    3. behavior:url("htc/csshover.htc");
    4. }
    5. *>htm body {
    6. behavior:url("htc/csshover.htc");
    7. }
    8. * html body {
    9. behavior:url("htc/csshover.htc");
    10. }
    11. *+html body {
    12. behavior:url("htc/csshover.htc");
    13. }
    14. /* Browserweichen ENDE */
    Alles anzeigen


    Dann die normalen Anweisungen

    Quellcode

    1. #dropdown, #dropdown ul {
    2. list-style-type:none;
    3. margin:0;
    4. padding:0;
    5. }
    6. #dropdown li {
    7. width:190px;
    8. float:left;
    9. }
    10. #dropdown li ul {
    11. display:none;
    12. }
    13. #dropdown li:hover ul {
    14. display:block;
    15. }
    Alles anzeigen


    Und der HTML-Code dazu

    Quellcode

    1. <ul id="dropdown" style="z-index:1;position:absolute;">
    2. <li>
    3. <a href="?show=admin">
    4. <div class="adminnavi_top">Hauptmen&uuml;</div>
    5. </a>
    6. <ul>
    7. <li>
    8. <a href="?show=admin&mode=home">
    9. <div class="adminnavi_ele">Startseite</div>
    10. </a>
    11. </li>
    12. <li>
    13. <a href="?show=admin&mode=current">
    14. <div class="adminnavi_ele">Aktuelles</div>
    15. </a>
    16. </li>
    17. <li>
    18. <a href="?show=admin&mode=management">
    19. <div class="adminnavi_ele">Vorstand</div>
    20. </a>
    21. </li>
    22. ...
    Alles anzeigen
    Dateien
    • csshover.zip

      (1,64 kB, 377 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von venum-lk () aus folgendem Grund: csshover.htc angefügt