![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 20.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mam kilka problemów dotyczących skryptu dynamicznego menu znalezionego w którymś z tematów na forum. Może na początek trochę kodu:
A tutaj skrypt js, z tego co zrozumiałem to jest on potrzebny do wyświetlania menu w IE:
I jeszcze deklaracja menu w dokumencie html: I teraz pytania. 1. Co zrobić, żeby można było użyć takiego menu "dwa razy" (w szablonie portalu - dwa boczne menu, w środku treść), tak, by menu wyświetlane po lewej stronie rozwijało się w praw, a menu wyświetlane po prawej stronie rozwijało się w lewo? 2. Czy taki skrypt będzie poprawnie wyświetlany w tych 3 najpopularniejszych przeglądarkach, czy raczej spróbować coś innego? Co byście radzili w takim przypadku? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 086 Pomógł: 8 Dołączył: 10.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(ArturS @ 2006-01-22 02:32:47) Masz link do "chodzącego" menu z przedstawionym kodem? Jak nie, to szybciej będzie wyszukać odpowiadającego wymaganiom "gotowca", np z Dynamicdrive (skrypty sa opisane pod jakimi przeglądarkami latają) i zmodyfikować go zależnie od potrzeb. Trochę takich gotowców lata po necie. Jak masz cos polecać to porządnego. Menu obecnie używane przez Marrbacca jest jednym z najbardziej poprawnych standardowo i działa bez JS. Na temat: 1) Drugie menu zrób z jakimś innym id, np. id="nav2". 2) Skrypt JS rozszerz o działanie dla jeszcze jednego id, np. Kod // JavaScript Document startList = function() { if (document.all&&document.getElementById) { navRoot = document.getElementById("nav"); for (i=0; i<navRoot.childNodes.length; i++) { node = navRoot.childNodes[i]; if (node.nodeName=="LI") { node.onmouseover=function() { this.className+=" over"; } node.onmouseout=function() { this.className=this.className.replace(" over", ""); } } } } if (document.all&&document.getElementById) { navRoot = document.getElementById("nav2"); for (i=0; i<navRoot.childNodes.length; i++) { node = navRoot.childNodes[i]; if (node.nodeName=="LI") { node.onmouseover=function() { this.className+=" over"; } node.onmouseout=function() { this.className=this.className.replace(" over", ""); } } } } } window.onload=startList; 3) Aby menu rozwijało się w lewo spróbuj w CSS dać Kod #nav2 li ul { a gdyby nie zadziałało, to może coś takiego:left: auto; right: 0; } Kod #nav2 li ul { left: -100px; } 4) Gdybyś przy czymś utknął, najlepiej podac adres strony :-) Ten post edytował Zajec 22.01.2006, 11:24:29 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 08:48 |