PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Position der Menü-Popups steuern


turndesign
22.01.2007, 10:55
Hallo,

wir haben das Forum aus Designgründen innerhalb eines Divs auf der Seite eingebaut.
Die Menü-Popups werden jetzt zu weit unten bzw. rechts geöffnet.

Habe versucht, den Popups über den Style "vbmenu_popup" eine absoluite Position zuzuweisen. Die Änderung wirkt sich aber nicht auf die Anzeige aus.

An welcher Stelle muß ich noch eingreifen, um die Position der Popups (z.B. für die Suche) zu korrigieren?

StGaensler
23.01.2007, 21:00
Editiere die clientscript/vbulletin_menu.js und ersetze die Funktion vB_Popup_Menu.prototype.fetch_offset ab Zeile 472 mit folgendem Code:vB_Popup_Menu.prototype.fetch_offset = function(obj)
{
var left_offset = obj.offsetLeft;
var top_offset = obj.offsetTop;
var obj_orig = obj;
var obj_menu = document.getElementById(obj.id + '_menu');
var i = 0;

while ((obj = obj.offsetParent) != null) i++;
while ((obj_menu = obj_menu.offsetParent) != null) i--;

obj = obj_orig;

while(i > 0)
{
obj = obj.offsetParent;
left_offset += obj.offsetLeft;
top_offset += obj.offsetTop;
i--;
}

return { 'left' : left_offset, 'top' : top_offset };
};Schreib bitte, ob es funktioniert :)

Viele Grüße,
Stefan

turndesign
24.01.2007, 11:55
Du bist der Beste. Das klappt jetzt wunderbar.

http://www.r-g.de/german/

quakeinside
20.12.2007, 22:33
Ich hatte das gleiche Problem und konnte es dank diesem Forenpost lösen, vielen Dank!

Nur leider bin ich jetzt nicht mehr wirklich updatefähig und muss diese Änderung bei jedem Update manuell einpflegen, außer es gibt natürlich noch eine schönere und bessere Lösung. :confused:

Gibt es eine Möglichkeit, diesen Feature-Request an die vB-Entwickler weiterzuleiten?

Viele Grüße,
Markus

ragtek
19.01.2008, 22:59
Schliesse mich meinem Vorredner an.
Ist das ein offizieller (gemeldeter) Bug?
An und für sich funktioniert es ja im Standardstyle, aber zB bei meinem Add-On (http://www.vbulletin-germany.org/showthread.php?t=1305) tritt dieses Problem auch auf, daher eben die Frage ob es eventuell wirklich ein Bug ist und ob er gemeldet ist, damit ich mal dorthin verlinken kann.
Wegen meiner nicht wirklich gut vorhandener Englischkenntnisse, halte ich mich dort eher zurück, das als Bug zu melden;)

Edit: http://www.vbulletin.com/forum/project.php?issueid=24367 habs jetzt einfach mal gemeldet

Finrod
17.04.2008, 13:01
Hi Stefan,

ich hab jetzt gerade eine Stunde an meinem Problem herum gefummelt. Die Bühne ist bei uns zentriert und ich hatte immer eine horizontale Verschiebung bei den Popups. Jetzt war ich mit meinem Latein am Ende und bin bei der Suche im Forum auf Deinen Beitrag gestossen.

1A Lösung, vielen Dank und beste Grüße

cellarius
16.05.2008, 22:09
Warum zum @!%&$!? schafft es Jelsoft nicht, das in den Griff zu kriegen?

Lieber Stefan,

die auszutauschende Funktion scheint es in 3.7 nicht mehr zu geben - mit dem Ergebnis, dass die Menüs wieder überall sind, nur nicht da, wo sie hin sollen. Hast Du vielleicht noch ein As im Ärmel?

Vielen Dank,
cellarius

StGaensler
17.05.2008, 09:34
Hallo,

also bei mir gibt es die Funktion immernoch, nur ist sie halt jetzt in Zeile 524 gelandet :)

Viele Grüße

Stefan

cellarius
17.05.2008, 10:42
Hallo Stefan,

vielen Dank für's Brillenputzen ;)

Ich - bzw. die Suchfunktion meines Editors - habe die Funktion gestern tatsächlich nicht gefunden. Dass die .js-Datei zumindest bei mir keinen einzigen Zeilenumbruch enthält, hat offenbar nicht unbedingt zu meiner Übersicht beigetragen...

Danke jedanfalls noch einmal!
cellarius

StGaensler
17.05.2008, 22:49
Wenn du die JavaScript-Dateien mit Zeilenumbruch haben willst, musst du nur beim Herunterladen des Pakets bei "Pakettyp" auswählen, dass du keine JavaScript-Komprimierung haben willst.

Viele Grüße

Stefan

mic_jan
25.05.2008, 23:30
Wenn du die JavaScript-Dateien mit Zeilenumbruch haben willst, musst du nur beim Herunterladen des Pakets bei "Pakettyp" auswählen, dass du keine JavaScript-Komprimierung haben willst.

Danke, der Hinweis und der gesamte Thread hat mir sehr geholfen.

Gruß,

Michael

ragtek
15.07.2008, 10:22
Editiere die clientscript/vbulletin_menu.js und ersetze die Funktion vB_Popup_Menu.prototype.fetch_offset ab Zeile 472 mit folgendem Code:vB_Popup_Menu.prototype.fetch_offset = function(obj)
{
var left_offset = obj.offsetLeft;
var top_offset = obj.offsetTop;
var obj_orig = obj;
var obj_menu = document.getElementById(obj.id + '_menu')
var i = 0;

while ((obj = obj.offsetParent) != null) i++;
while ((obj_menu = obj_menu.offsetParent) != null) i--;

obj = obj_orig;

while(i > 0)
{
obj = obj.offsetParent;
left_offset += obj.offsetLeft;
top_offset += obj.offsetTop;
i--;
}

return { 'left' : left_offset, 'top' : top_offset };
};Schreib bitte, ob es funktioniert :)

Viele Grüße,
Stefan
Wie in http://www.vbulletin-germany.org/showthread.php?p=35466#post35466 festgestellt wurde, fehlt ein ; im Code.

Es fehlt ein Semikolon hier:
var obj_menu = document.getElementById(obj.id + '_menu');

StGaensler
15.07.2008, 12:41
Dankeschön für den Hinweis, und danke an Pogo fürs Ausbessern. Ich hab meinen Beitrag bei vbulletin.com auch gleich angepasst.

Viele Grüße

Stefan

Sick0fItAll
13.08.2008, 00:50
Hallo,

ich steh vor dem selben Problem, dass die PopUps nicht angezeigt werden, wo ich sie haben will.

Mal ein Scrrenshot von den ersten Fertigungsentwürfen des neuen Designs mit Navigation rechts:

6746

Kann mir jemand helfen? Die Navigation rechts befindet sich in einem DIV- Container und der Foreninhalt links befindet sich in einem DIV- Container... Weiß jemand rat?

Grüße

StGaensler
13.08.2008, 12:13
Hallo,

das richtige Thema hast du schon gefunden - hast du denn auch oben beschriebene Änderung (http://www.vbulletin-germany.com/forum/showpost.php?p=172546&postcount=2) bereits ausprobiert?

Viele Grüße

Stefan