Archivlink: javarea.de Forum > JavaScript > pull-down menü on-mouse-over
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > pull-down menü on-mouse-over
Pages: [1]
2
... nächste »
... Letzte »
| geschrieben von Sarah am 16.09.2006 - 16:27 |
Hallo!
Also ich habe folgendes Problem:
Ich möchte ein horizontales Menü erstellen, dass sich nach unten aufklappt, wenn man mit der Maus über einen Menüpunkt fährt. Dabei sollte das jeweilige Untermenü angezeigt werden. Wenn man den Menüpunkt bzw. das Untermenü mit der Maus verlässt, sollte es sich wieder schließen.
Wie in diesem Beispiel: http://www.javarea.de/index.php3?op....amp;id=469
Ich möchte das Menü in einem eigenen Frame positionieren und der jeweilige ausgewählte Link sollte im Frame darunter geöffnet werden.
Das Problem dabei ist, dass das Menü unter dem darunter liegenden Frame verschwindet. Man hat mir gesagt, dass ich dafür ein Script benötige.
Vielleicht könnt ihr mir da ja weiter helfen.
Lg Sarah |
| geschrieben von weisnix am 16.09.2006 - 17:44 |
Hallo Sarah,
das ist dann ein frameübergreifendes Menü. Da fällt mir auf anhieb nur das cool-Menü ein. Dieses öffnet sich im darrunterliegenden Frame.
Beispiel: coolFrame Menue top
Gruß
|
| geschrieben von Sarah am 16.09.2006 - 19:24 |
ja das schaut ganz gut aus. nur wenn ich den code bei mir in der homepage einfüge, funktioniert das Ganze nicht mehr.
Gibt es vielleicht noch eine einfachere Möglichkeit. Weil ich weiß auch nicht genau was da alles beim code verändert gehört, damit es bei mir funktioniert.
hab jetzt nur diese beiden zeilen angepasst:
oCFMenu.menuFrameName="mainFrame" //Name für ihr "main" frame (main=hauptframe)
oCFMenu.startPage="home.htm" //erst wenn main frame geladen ist wird das menu geladen
Das wird wahrscheinlich zu wenig sein, oder?
lg sarah
|
| geschrieben von Sarah am 16.09.2006 - 19:45 |
okay das menü zeigt es mir jetzt an. ist es möglich den text durch bilder zu ersetzen?? das müsste nämlich unbedingt sein, sonst bringt mir das ganze Menü nichts.
lg sarah |
| geschrieben von weisnix am 16.09.2006 - 20:02 |
Ja, du kannst da auch Bilder statt dem Text verwenden.
oCFMenu.makeTop('<img src=deinBild.gif>',0,0,120) //MAIN 1
|
| geschrieben von Sarah am 16.09.2006 - 20:20 |
ja das habe ich mittlerweile auch rausgefunden 
aber trotzdem danke!
habe aber schon wieder ein neues problem 
habe nämlich noch weitere 2 menüpunkte eingefügt und jetzt hat sich alles nach links verschoben.
der 1. menüpunkt ist jetzt unter dem linken frame verschwunden.
wie kann ich das menü wieder in die mitte platzieren??
kann das sein, dass das mit dem menü nur im IE klappt, aber nicht im Firefox???
kann man daran irgendetwas ändern? |
| geschrieben von weisnix am 16.09.2006 - 22:52 |
Irgend wann ist der Zeitpunkt gekommen da entweder nur eine Glaskugel hilft, oder ihr das online stellt, um zu sehen was da falsch ist.
Oder meinst du wir haben hellseherische Fähigkeiten?
|
| geschrieben von Sarah am 17.09.2006 - 15:31 |
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
|
<?
<script language="JavaScript1.2" type="text/javascript">
mDebugging=1
oCFMenu=new coolFrameMenu('oCFMenu')
oCFMenu.menuFrameName="frmMain" //Name für ihr "main" frame (main=hauptframe)
oCFMenu.startPage="home.htm" //erst wenn main frame geladen ist wird das menu geladen
oCFMenu.maxsubs=9 //Anzahl der maximalen subs
oCFMenu.maxsubs2=7 //Anzahl der maximalen sub2s
oCFMenu.maxsubs3=7 //Anzahl der maximalen sub3s
oCFMenu.frametype=2
oCFMenu.pagecheck=1 //check des submenus wie weit es gehen soll (nur für top und bottom frame )
oCFMenu.mainheight=25 //höhe des main menuitems in pixel oder %
oCFMenu.mainwidth=119 //breite main menuitems in pixel oder %
oCFMenu.subwidth=155 //weite der submenus
oCFMenu.subheight=25 //höhe des subitems in pixel oder %
oCFMenu.sub2width=oCFMenu.mainwidth //weite des sub2menus in pixel oder %
oCFMenu.sub2height=oCFMenu.subheight //höhe sub2items in pixel oder %
oCFMenu.sub3width=oCFMenu.mainwidth //weite des sub3menus in pixel oder %
oCFMenu.sub3height=oCFMenu.subheight //höhe des sub3items in pixel oder %
oCFMenu.subXplacement=0 //relative position des main item (item=Gegenstand)
oCFMenu.subYplacement=0 //relative position des main item (item=Gegenstand)
oCFMenu.sub2Xplacement=oCFMenu.subwidth+1 //X Lage für subsubmenus, relative zum sub item (item=Gegenstand)
oCFMenu.sub2Yplacement=+12 //Y Lage für subsubmenus, relative zum sub item (item=Gegenstand)
oCFMenu.sub3Xplacement=oCFMenu.sub2width+1 //X Lage für subsubmenus, relative zum sub2 item (item=Gegenstand)
oCFMenu.sub3Yplacement=+12 //Y Lage für subsubmenus, relative zum sub2 item (item=Gegenstand)
oCFMenu.mainbgcoloroff='#f6d234' //Hintergrundfarbe für main menuitems
oCFMenu.mainbgcoloron='#f6d234' //Hintergrundfarbe auf mouseover von main menuitems
oCFMenu.maintextcolor="#000000" //original text Farbe
oCFMenu.mainhovercolor="#000000" //Farbe für Text bei mouseover
oCFMenu.subbgcoloroff='#f6d234' //Hintergrundfarbe für main menuitems
oCFMenu.subbgcoloron='#f6d234' //Hintergrundfarbe auf mouseover von main menuitems
oCFMenu.subtextcolor="white" //original text Farbe
oCFMenu.subhovercolor="red" //Farbe für Text bei mouseover
oCFMenu.sub2bgcoloroff='#f6d234' //Hintergrundfarbe für main menuitems
oCFMenu.sub2bgcoloron='#f6d234' //Hintergrundfarbe auf mouseover von main menuitems
oCFMenu.sub2textcolor="white" //original text Farbe
oCFMenu.sub2hovercolor="0000FF" //Farbe für Text bei mouseover
oCFMenu.sub3bgcoloroff='#f6d234' //Hintergrundfarbe für main menuitems
oCFMenu.sub3bgcoloron='#f6d234' //Hintergrundfarbe auf mouseover von main menuitems
oCFMenu.sub3textcolor="black" //original text Farbe
oCFMenu.sub3hovercolor="red" //Farbe für Text bei mouseover
oCFMenu.bordersize=1 //Bordergrösse
oCFMenu.bordercolor="#f6d234" //Borderfarbe
//Stil der Schriftart,farbe,Grösse und Ausrichtung im Menue
oCFMenu.topstyle="font-family:arial,helvetica; font-size:12px; padding:4"
//Stil der Schriftart,farbe,Grösse und Ausrichtung im submenus
oCFMenu.substyle="padding:3px; font-family:arial,helvetica; font-size:12px;text-align:center"
//Stil der Schriftart,farbe,Grösse und Ausrichtung im sub2menus
oCFMenu.sub2style="padding:3px; font-family:arial,helvetica; font-size:12px;text-align:center"
oCFMenu.sub3style="padding:3px; font-family:arial,helvetica; font-size:12px;text-align:center"
//blättern der Linie
oCFMenu.makeStyle() //schreiben aus dem Stil für das top menu
oCFMenu.makeFrameString()
oCFMenu.menuplacement=0 //Beispiel oben nebeneinander
oCFMenu.pxbetween=10 //Abstand in pixel oder %
oCFMenu.fromleft=1 //Abstand in pixel oder % von links
oCFMenu.fromtop=1 //Abstand in pixel oder % von oben
numberofmenus=7 //Anzahl und zentrieren des Menues
menutotalwidth=oCFMenu.mainwidth*numberofmenus+oCFMenu.pxbetween*(numberofmenus-1)
oCFMenu.fromleft=page.x50-menutotalwidth/2 //in pixel oder %
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_news.gif" name="News" width="43" height="25" border="0">','obenFrame.htm','frmMain',43) //MAIN 1
oCFMenu.makeSub('test1')
oCFMenu.makeSub2('testsub1')
oCFMenu.makeSub3('testsub3-1','main1.html','frmMain')
oCFMenu.makeSub3('testsub3-2','main.html','frmMain')
oCFMenu.makeSub2('testsub2')
oCFMenu.makeSub3('testsub3-1')
oCFMenu.makeSub3('testsub3-2')
oCFMenu.makeSub('test2')
oCFMenu.makeSub2('testsub1')
oCFMenu.makeSub3('testsub3-1')
oCFMenu.makeSub3('testsub3-2')
oCFMenu.makeSub2('testsub2')
oCFMenu.makeSub2('testsub1')
oCFMenu.makeSub2('testsub2')
oCFMenu.makeSub3('testsub3-1')
oCFMenu.makeSub3('testsub3-2')
oCFMenu.makeSub2('testsub1')
oCFMenu.makeSub2('testsub2','main1.html','frmMain')
oCFMenu.makeSub('test3','main1.html','frmMain')
oCFMenu.makeSub('test3','main.html','frmMain')
oCFMenu.makeSub('test3','main1.html','frmMain')
oCFMenu.makeSub('test3','main.html','frmMain')
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_angebote.gif" name="Angebote" width="88" height="25" border="0">','mobile_hilfe_und_betreuung.htm','frmMain',88) //Main 2
oCFMenu.makeSub('Altstoffverwertung',0,'frmMain')
oCFMenu.makeSub('Garten und Rasen',0,'frmMain',85)
oCFMenu.makeSub('Leasing Plus',0,'frmMain','alert("test")')
oCFMenu.makeSub('Mobile Hilfe und Betreuung','mobile_hilfe_und_betreuung.htm','frmMain','alert("test")')
oCFMenu.makeSub('Öko-Service',0,'frmMain','alert("test")')
oCFMenu.makeSub('RepaNet/EcoNet',0,'frmMain','alert("test")')
oCFMenu.makeSub('RifaRad',0,'frmMain','alert("test")')
oCFMenu.makeSub('Übungshotel',0,'frmMain','alert("test")')
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_ueber_uns.gif" name="UeberUns" width="83" height="25" border="0">',0,'frmMain',83) //Main 3
oCFMenu.makeSub('test1')
oCFMenu.makeSub2('testsub1')
oCFMenu.makeSub2('testsub2')
oCFMenu.makeSub('test2')
oCFMenu.makeSub('test3')
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_mitgliedschaft.gif" name="Mitgliedschaft" width="147" height="25" border="0">',0,'frmMain',147) //Main 4
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_standort.gif" name="Standort" width="95" height="25" border="0">','standort.htm','frmMain',95) //Main 5
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_ihre_meinung.gif" name="IhreMeinung" width="121" height="25" border="0">',0,'frmMain',121) //Main 6
oCFMenu.makeTop('<img src="Bilder/Menuepunkte/mp_partner.gif" name="Partner" width="88" height="25" border="0">',0,'frmMain',88) //Main 7
oCFMenu.construct()
//bei jedem verändern der Grösse wird das Frameset neu geladen (reload)
searchtext=location.search
isresized=searchtext.lastIndexOf("resizedurl")
if(isresized>-1){ //Get PAGE
oCFMenu.startPage="http://" + searchtext.substr(isresized+11,searchtext.length)
}
if(top[oCFMenu.menuFrameName])top[oCFMenu.menuFrameName].location.href=oCFMenu.startPage
</script>
?>
|
|
| geschrieben von weisnix am 17.09.2006 - 22:48 |
Ich kann da deinen Fehler nicht nachvollziehen.
Das Menü stimmt so weit.
|
| geschrieben von pyscho am 18.09.2006 - 09:43 |
Hi Sarah,
als ich deinen php-code testen wollte gab mir der Browser diesen Fehler in der zweiten Zeile:
Parse error: parse error, unexpected '<' in tests/sarah_menue.php on line 2
Das hängt damit ab, dass JavaScript im PHP Block ist. Du musst entweder den Script außerhalb der PHP Block schreiben oder den Script anpassen für den PHP.
Das Problem ist auch dass ich weder in IE oder FF oder Mozilla nichts sehen kann. Eine leere Seite...
Ich habe auch die Seite validiert
byee
|
| geschrieben von weisnix am 18.09.2006 - 10:25 |
Hallo @pyscho,
dein Beitrag ist völlig „Banane“. Es geht hier bei nicht um php. Der JavaScript wurde halt nur mit dem faschen bb-Code hier reingesetzt. Was aber auch völlig „Banane“ ist.
Der Beitrag geht um das coolMenü in einem Frameset. Und um den Fehler nachvollziehen zu können, müsste ich die Page von @Sarah nachbauen. Sehe aber da nicht meine Aufgabe drin.
|
| geschrieben von pyscho am 18.09.2006 - 12:37 |
@weisnix,
das es sich um den Menu handelt ist mir bekannt aber ich wollte sagen, dass ich eine Leere Seite bekommen habe als ich das Problem mit dem Menu lösen wollte und dies wäre ein nächster Problem.
aber wenn du meinst dann hilft ihr ...
ich steig aus ... ;)
bye...
|
| geschrieben von weisnix am 18.09.2006 - 13:04 |
@pyscho
So, so.
Da du es also nicht in php angehst, werden dir dennoch die restlichen Seiten und Scripte fehlen.
Die gibt es hier: (Beispiel: coolFrame Menue top) Dann kommt auch keine leere Seite mehr. Aber das löst trozdem nicht das Problem, da die Musterseiten bestimmt nicht so aussehen wie die von @Sarah.
|
| geschrieben von pyscho am 19.09.2006 - 12:36 |
@weisnix,
danke das du dies sagst bis nachher
wenn ich was für das problem tuen kann freut mich 
bye....
|
| geschrieben von Sarah am 01.10.2006 - 20:31 |
Habe das Ganze jetzt noch einmal überarbeitet, dabei ist es mir gelungen das Menü wieder in die Mitte zu platzieren.
Hätte jetzt noch ein paar Fragen:
Ist es möglich bei den Menüpunkten Rollover-Bilder einzufügen?
Kann mann beim Script etwas einfügen, um das Menü auch im Firefox anzeigen zu können?
Und ein Problem habe ich auch noch: Wenn ich einen Menüpunkt ausführe (eine Seite im Hauptframe öffne) und dann wieder das Menü betätigen will, erscheint es zwar, aber die Menüpunkte befinden sich hinter dem Text der Seite im Hauptframe? (ich hoffe das war verständlich)
Was kann man dagegen machen??
lg Sarah
|
|