entschuldigung + positionsabfrage von elementen?
David
- javascript
0 Stefan Muenz0 David
0 André Laugks
Guten Morgen, Forumsgemeinde.
Wen Ihr hier seht ist ein völlig neuer David. Ich habe offensichtlich über die Strenge geschlagen und wurde dementsprechend oft und hart darauf hingewiesen. Nun, ich werde eure Ratschläge zu Herzen nehmen und mich am Riemen reißen. Für mich ist dieses Thema nun abgeschlossen und ich hoffe für euch auch. Ich möchte mich im Nachhinein noch bei allen entschuldigen, die sich durch mich gestört fühlten.
Das ist aber nicht der eigentlich Grund, warum ich poste. Mein Problem ist folgendes:
Ich habe ein Menu gebastelt, bei dem, wenn ich mit dem Mauszeiger über einen Menupunkt fahre, ein Popup-Menu darunter erscheint (vergleichbar mit dem Windows-Menu bei gedrückter Maustaste). Im Moment sind alle Positionsangaben pixelgenau, damit die Untermenus auch genau unter dem Menupunkt erscheinen. Doch habe ich vor, das Menu zu zentrieren. Somit müsste ich die Position des Menus dynamisch ermitteln. Ist dies möglich? Kann ich die absolute Position zb. eines TD-tags erfragen?
Gruss, David
Hallo gelaeuterter David
Ist dies möglich? Kann ich die absolute Position zb. eines TD-tags erfragen?
Nach Syntax des MS IE ja.
in HTML definieren:
<td id="eineZelle">Inhalt</td>
in JavaScript Bezug darauf nehmen:
links = document.all.eineZelle.offsetLeft;
oben = document.all.eineZelle.offsetTop;
So bekommst du die linke obere Ecke des <td>'s heraus.
Bei Netscape wuesste ich jetzt nicht wie.
viele Gruesse
Stefan Muenz
Vielen Dank, Stefan :)
Bei Netscape wuesste ich jetzt nicht wie.
Wieder mal schade, daß es somit wohl auf 2 verschiedene Versionen hinaus laufen muss :(
Aber wer weiss, vielleicht gibt es bei Netscape ja doch eine Möglichkeit? Oder wird der NC 5 vielleicht so etwas unterstützen? Vielleicht weiss jemand um Rat.
Gruss, David
hi!
Aber wer weiss, vielleicht gibt es bei Netscape ja doch
eine Möglichkeit? Oder wird der NC 5 vielleicht so etwas
unterstützen? Vielleicht weiss jemand um Rat.
Der Netscape 5 wird HTML 4.0 komplett, CSS 1 komplett, CSS 2 zum Teil, DOM komplett, XML 1.0 komplett und JavaScript 1.5 komplett unterstützen. Wenn du wissen willst, was das beinhaltet, findest du die entsprechenden Infos unter http://www.w3.org oder auf der Mozilla-Homepage.
bye, Frank!
Hallo David!
Ich habe ein Menu gebastelt, bei dem, wenn ich mit dem Mauszeiger über einen Menupunkt fahre, ein Popup-Menu darunter erscheint (vergleichbar mit dem Windows-Menu bei gedrückter Maustaste). Im Moment sind alle Positionsangaben pixelgenau, damit die Untermenus auch genau unter dem Menupunkt erscheinen. Doch habe ich vor, das Menu zu zentrieren. Somit müsste ich die Position des Menus dynamisch ermitteln. Ist dies möglich? Kann ich die absolute Position zb. eines TD-tags erfragen?
Joachim hat vor kurzen ein Script gepostet, <../../sfarchiv/1999_3/t05297.htm#a25727>, darauf beruht die Beispielseite, die Du Dir hier anschauen kannst. Schaue einfach in den Quellentext.
Das Script ist für eine Tabelle konzipiert, die 700 Pixel breit ist! Es wird die Breite des Browserfensters abgefragt, dann durch 2 geteil und dann nochmal minus 320 gerechnet. Der Wert ist dann die y-Position des Tooltips. Du müßtest also noch eine kleine Anbfrage einbauen, fals das Browserfenster kleiner 700 Pixel, oder besser kleiner 720 Pixel ist. Dann müßen eben vordefinierte Werte für y, also left, genommen werden!
http://www.netcologne.de/~nc-laugksan/forum/dhtml1.htm
Mit freundlichen Grüßen
André Laugks
Hallo!
Und nochmal!
Das Script ist für eine Tabelle konzipiert, die 700 Pixel breit ist! Es wird die Breite des Browserfensters abgefragt, dann durch 2 geteil und dann nochmal minus 320 gerechnet. Der Wert ist dann die y-Position des Tooltips. Du müßtest also noch eine kleine Anbfrage einbauen, fals das Browserfenster kleiner 700 Pixel, oder besser kleiner 720 Pixel ist. Dann müßen eben vordefinierte Werte für y, also left, genommen werden!
Natürlich passe Dir alles auf Deine Bedürfnisse an. Wenn aber das Browserfenster kleiner ist, als Deine Tabelle, mußt Du eben eine andere Maßnahme einleiten....!
Mit freundlichen Grüßen
André Laugks