Avatar billede refshauge Nybegynder
08. februar 2003 - 17:38 Der er 7 kommentarer og
2 løsninger

Problem med links i layers

Jeg har følgende layer som jeg viser og skjuler via javascript og det fungerer perfekt:

<div id="menu" style="visibility:hidden;" onmouseout="skjullag('menu');">
Postkort<br>
Chat<br>
</div>

Når jeg så laver postkort og chat om til links

<div id="menu" style="visibility:hidden;" onmouseout="skjullag('menu');">
<a href="/postkort">Postkort</a><br>
<a href="/chat">Chat</a><br>
</div>

så skjuler den laget når man går hen over linket (postkort eller chat), og man kan derfor ikke nå at komme til at klikke på mine menupunkter.
Avatar billede refshauge Nybegynder
08. februar 2003 - 18:07 #1
Jeg har prøvet
<a href="/postkort" onmouseover="vislag('menu');">Postkort</a><br>

men det giver samme resultat
Avatar billede olebole Juniormester
08. februar 2003 - 23:19 #2
<ole>

Det er fordi, du fyrer onmouseout-eventen af på dit div, når du laver mouseover på dine links ... sådan er event-modellen nu engang lavet  :)
Så nemt er det ikke at lave en menu ... du må ud og lure nogle menuer af for at se, hvordan de løser problemet og så se hvilken løsning, du kan anvende i dit tilfælde.

(mvh
</bole>
Avatar billede comodo Nybegynder
10. februar 2003 - 00:54 #3
Istedet for at bruge:
<div id="menu" style="visibility:hidden;" onmouseout="skjullag('menu');">
Skal du bruge:
<div id="menu" style="visibility:hidden;" onMouseLeave="skjullag('menu');">

Altså onMouseLeave istedet for onMouseOut ...
Det virker for mig :)
Avatar billede olebole Juniormester
10. februar 2003 - 01:08 #4
comodo >> Det er proprietær MS-kode. Problemet er ikke event-handleren, men en forsimplet kode.
Det kan sagtens løses, så det virker X-browser/X-platform ... og det er jo det mindste, man kan forlange af en kode  ;o)
/mvh
Avatar billede comodo Nybegynder
11. februar 2003 - 01:12 #5
olebole -> Øv !... Ej spøg til side... Jeg må jo desværre give dig ret!

Havde bare lige fået til at virke (har selv leget med at vise/skjule layers...) og da jeg så, så der var en der havde haft samme problem som mig... ;)
Avatar billede olebole Juniormester
11. februar 2003 - 04:04 #6
Vi er enige om dit 'Øv'. onmouseenter og onmouseleave ville være rart at få ind i standarden - men indtil da .... tjahhhhh  :)

Man kan dog lave en transparent gif med dette tag:
  <img src="trans.gif" width="100%" height="100%"
    style="position:absolute;left:0px;top:0px;visibility:hidden;z-index:1;"
    onmousover="skjulAlleLag();">

Menu-div'et lægges så i z-index:2 - og når det vises, vises den transparente gif også. Når man så kører ud på trans'en, skjules div og billede.

Har man flere menu-divs, skal der selvfølgelig noget mere kode til, men dette er princippet  :)
/mvh
Avatar billede olebole Juniormester
11. februar 2003 - 04:06 #7
Skal menuen kunne 'flyde' med ved resize (f.eks. ved en centreret menu) skal der endnu mere kode til, da menuen selvfølgelig skal være positioneret absolut.
Avatar billede refshauge Nybegynder
20. februar 2003 - 21:46 #8
Jeg har nu bøvlet frem og tilbage med det her i et stykke tid og er kommet frem til at vi istedet laver det sådan at menuerne ikke åbner ved mouseover, men ved klik. Ligesådan lukkes de også kun ved klik.

Jeg takker dog for gode indspil og vil gerne give olebole nogle point, så hvis du vil lægge et svar...
Avatar billede olebole Juniormester
21. februar 2003 - 00:10 #9
yups ... svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester