Toon posts:

[html & js] submenu werkt niet goed in Mozilla Firefox

Pagina: 1
Acties:
  • 173 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo,

ik heb een leuk dynamisch menu inelkaar geknutseld met submenu's.
Echter kunnen deze submenu's in Mozilla (Firefox) niet worden bereikt.
Ik vermoed dat dat komt omdat ze buiten de div vallen die officieel voor het menu is bedoeld.
In opera en IE werkt het wel goed.

Wat zou ik hieraan kunnen doen behalve de div en bijbehorende kolom vergrootten? Maar dat is eigenlijk niet mijn bedoeling i.v.m. de ruimte die overblijft voor de tekst.
De z-index verhogen/verkleinen werkt niet, net zoals het aanpassen van enkele delen van de css.

voorbeeld: http://www.waaksmawortelen.nl/ (let niet op de kleuren/vormgeving van het menu, is nog in ontwerpfase.)

  • RSpliet
  • Registratie: Juni 2003
  • Laatst online: 27-11-2025

RSpliet

*blink*

Heeft te maken met de onmouseout="hidemenu2(68);"... Als je je muis van die knop haalt 'hide' hij het menu... is toch niet zo gek, wel?

Schaadt het niet, dan baat het niet


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

HTML hoort in Webdesign & Graphics, zoals je zelf ook wel weet. :)

PW>>WG

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Seven of Nine schreef op woensdag 17 augustus 2005 @ 18:15:
Heeft te maken met de onmouseout="hidemenu2(68);"... Als je je muis van die knop haalt 'hide' hij het menu... is toch niet zo gek, wel?
hidemenu2 is alleen voor menu's zonder submenu, dan zou het hidemenu moeten zijn.
Maar je blijft toch indezelfde 'div' zitten, want die wordt erna pas afgesloten. Maar het is natuurlijk mogelijk dat Firefox dat niet goed doet, maar is er dan een oplossing voor?

  • tweakerbee
  • Registratie: Maart 2000
  • Laatst online: 30-04 12:08

tweakerbee

dus..?

korte timeout erop zetten, als je een subdiv binnengaat timer cancellen

You can't have everything. Where would you put it?


Verwijderd

De onmouseover die de functie aanroept ook in het submenu zetten:

<div id="dropdown1" class="dropdown" onmouseover="dropmenu(1);" onmouseout="hidemenu(1);" >

[ Voor 20% gewijzigd door Verwijderd op 17-08-2005 19:56 . Reden: spelling ]


Verwijderd

Topicstarter
Timeout:

Zou je me daar misschien wat meer uitleg over kunnen geven?

En eigenlijk is het timeout gebeuren dan alleen maar van toepassing voor Firefox/Mozilla, dus dan moet je daar ook weer onderscheid in maken. Want anders zit 95% van de gebruikers voorniets te wachten op iets wat ze niet nodig hebben.
Verwijderd schreef op woensdag 17 augustus 2005 @ 19:55:
De onmouseover die de functie aanroept ook in het submenu zetten:

<div id="dropdown1" class="dropdown" onmouseover="dropmenu(1);" onmouseout="hidemenu(1);" >
Maar, kom je ooit wel in het submenu? Volgens mij kun je dat nooit bereiken.
Maar ik zat het wel even uitproberen.

[ Voor 46% gewijzigd door Verwijderd op 17-08-2005 20:02 . Reden: Mamaaa, ze typen te snel ;( ]


  • RSpliet
  • Registratie: Juni 2003
  • Laatst online: 27-11-2025

RSpliet

*blink*

Als je voor de grap van .dropdown left: op 80px zet ipv 100, zal je zien dat het menu verdwijnt zodra je de 100px van het hoofdmenu overschrijd.
Kijk eens naar hoe ik het op http://www.nmn-groep.nl heb geregeld, is trouwens ook een stuk minder code :) De oplossing daar werkt in alle moderne browsers, en IE ook trouwens ;) Het javascript staat in http://www.nmn-groep.nl/rollout.js
Let dan niet op het tabelletje in de 'uitklappende' div, vind ik namelijk zelf ook n hele vieze oplossing ;)

[ Voor 35% gewijzigd door RSpliet op 17-08-2005 20:18 ]

Schaadt het niet, dan baat het niet


Verwijderd

Topicstarter
Ik heb ook even naar je css gekeken (als ik zo vrij mag zijn), en daaruit blijkt dat het menu bij jouw op een vaste plaats staat.
De ellende bij mij is, dat men zelf de mogelijkheid heeft om pagina's toe te voegen, dus ook willekeurige menu's en submenu's kan aanmaken.
Dus ik weet niet waar het uitklap menu zich zal gaan bevinden.
Verder zou een kleine oplossing zijn om het menu 20 pixels naar links toen doen, maar aan de andere kant is dat natuurlijk niet echt netjes.

De mouseover functie in het submenu zetten werkt ook niet echt i.v.m. het feit dat je nooit in dat submenu kunt komen. Maar i.c.m. de verschuiving van 20 pixels (of dan misschien wel minder), zou het een goede oplossing kunnen zijn.
Dat ga ik dan nu maar even testen.

Helaas, dat geeft ook niet het gewenste resultaat. Iemand nog ideeën? Bvd.

[ Voor 7% gewijzigd door Verwijderd op 17-08-2005 20:39 ]


  • RSpliet
  • Registratie: Juni 2003
  • Laatst online: 27-11-2025

RSpliet

*blink*

Verwijderd schreef op woensdag 17 augustus 2005 @ 20:35:
Ik heb ook even naar je css gekeken (als ik zo vrij mag zijn), en daaruit blijkt dat het menu bij jouw op een vaste plaats staat.
De ellende bij mij is, dat men zelf de mogelijkheid heeft om pagina's toe te voegen, dus ook willekeurige menu's en submenu's kan aanmaken.
Dus ik weet niet waar het uitklap menu zich zal gaan bevinden.
Verder zou een kleine oplossing zijn om het menu 20 pixels naar links toen doen, maar aan de andere kant is dat natuurlijk niet echt netjes.

De mouseover functie in het submenu zetten werkt ook niet echt i.v.m. het feit dat je nooit in dat submenu kunt komen. Maar i.c.m. de verschuiving van 20 pixels (of dan misschien wel minder), zou het een goede oplossing kunnen zijn.
Dat ga ik dan nu maar even testen.

Helaas, dat geeft ook niet het gewenste resultaat. Iemand nog ideeën? Bvd.
Kijk dan nog eens naar mijn source :) Het gaat hier om divjes die dmv javascript op de juiste hoogte worden gezet. Zo houdt ik zelfs rekening met menuitems van 2 regels, of andere fonts in andere browsers/operating systems. Ik kan ook volledig automatisch menuitems toevoegen hoor ;)

En voel je vrij om (delen van) de broncode te gebruiken hoor, kan het toch niet patenteren of beveiligen.

[ Voor 6% gewijzigd door RSpliet op 17-08-2005 20:58 ]

Schaadt het niet, dan baat het niet


Verwijderd

Ik bedoelde de functie zowel op de orginele plaats laten staan alswel toevoegen aan het submenu.
Dan klapt het menu uit bij mouseover op het hoofdmenu en blijft uitgeklapt zolang de muis over het submenu hangt.

Verwijderd

Topicstarter
Dat heb ik uiteraard ook geprobeerd, maar helaas.
Ik zit nu te denken aan een oplossing door tijdelijke het menuitem te verlengen, zodat deze onder het submenu doorgaat.
Dit zal misschien wel werken voor het naast liggende menuitem, maar voor submenu's die meer naar beneden zitten, zal het weer niet gaan werken.
Dus de div moet de hoek om, of je moet ervoor zorgen dat je geen probleem krijgt met de z-index.

Is het mogelijk om een div in een hoek te maken?

Verwijderd

Topicstarter
Ik heb het nu met een setTimeout() geprobeerd, je kunt er wel met de muis overheen in mozilla, maar hij klapt niet meer in, in alle browsers.
Moet ik ook nog ergens een functie in de geest van clearTimeout() gebruiken?
Zo ja, waar dan?

  • RSpliet
  • Registratie: Juni 2003
  • Laatst online: 27-11-2025

RSpliet

*blink*

Fout: missing ) after argument list
Broncode:
setTimeout('hidemenu(1)',10;
Zou ik eerst eens fixxen als ik jou was ;) Nu werkt de hele functie niet en klapt het hele menu niet meer in. Makkelijker is (zoals dus in mijn voorbeeld te zien is) dat het menu inklapt zodra je een andere opent, of zodra de muis over het content vlak heen gaat... Daarnaast zal het menu nu gewoon na 10 seconden (?) inklappen, omdat je nogsteeds de onmouseout triggert.

[ Voor 63% gewijzigd door RSpliet op 18-08-2005 14:07 ]

Schaadt het niet, dan baat het niet


Verwijderd

Topicstarter
Ten einde raad heb ik een suckerfish menutje gebruikt en naar wens aangepast.
Dit werkt volgens mij het simpelst in alle browsers.
Alleen heb ik nu nog 1 probleempje: het gat tussen de verschillende menuitems is niet altijd even groot, dat zit hem in het feit dat er soms wel een <ul> onder hangt en soms niet.

Weet iemand hier de oplossing voor?

  • RSpliet
  • Registratie: Juni 2003
  • Laatst online: 27-11-2025

RSpliet

*blink*

<p class="MsoNormal"... Jij zit hier toch niet in Word te devven hé? :S
Maarehh, ik zie t probleem niet zo met dat gat... boven en onder elk menuitem is 5px. Dus onderaan houd je 5px over, en tussen 2 menuitems 10px. Dat heb je zelf zo defined, en dat zie ik ook op m'n scherm.

Schaadt het niet, dan baat het niet


Verwijderd

Topicstarter
Dat <p class="MsoNormal"... komt uit de inhoud, en die kan worden aangepast door een heel handig hulpmiddel genaamd htmlarea ( http://www.byjamesraia.com/htmlarea ).
Dus absoluut geen word gebruik.

Het kan kloppen dat jij geen gat ziet, ik ben erachter gekomen dat deze alleen in IE zichtbaar is.
Grr, wanneer gaan ze alle browsers gelijk trekken? 1 html enigne van W3, en dan mag iedereen daar zelf een uiterlijk omheen gieten oid, zou het leven versimpelen ;)

Maar dat gat is er alleen wanneer er een <ul></ul> onder het item hangt, dus ik denk dat er ergens iets staat over een rand om een ul heen, deze ben ik aan het zoeken.

Maar bedankt voor je meedenkendheid.
Pagina: 1