Avatar billede kledal Nybegynder
31. august 2004 - 14:09 Der er 7 kommentarer

absolut position afhængig af musens position!

Er det muligt.
har en menu i venstre side, når man laver mouseover vises undermenu for den givne menu. Jeg vil gerne have at undermenuen vises lige til højre for det menupunkt man laver mouseover på!

Her kalder jeg menuen.

strOutput=strOutput & "<tr><td id=" & name & "field" & x & strTmpwidth & strMenuheight & " onmouseout=""return hidemenu(" & strFieldref & name & "field" & x & ", " & strFieldref & name & "menu" & x & ");"">"
                strOutput=strOutput & "<span onmouseover="" if (document.readyState=='complete') {return showmenu(" & strFieldref & name & ", " & strFieldref & name & "field" & x & ", " & strFieldref & name & "menu" & x & ");}"" style=""cursor:hand"" class=""menusub"">"
                strOutput=strOutput & strRef & strTmptext & strRefEnd & "</span></td></tr>"

og her er scriptet.

<SCRIPT>
function showmenu(tmptable, tmpfield, tmpmenu) { var intPosY=0, intPosX=0, intTabletop, intTableleft; var currentelem=tmpfield; while (true) { intPosX=intPosX+currentelem.offsetLeft; intPosY=intPosY+currentelem.offsetTop; if (currentelem.offsetParent.tagName=='BODY') { break; } else { currentelem=currentelem.offsetParent;}} intPosY=intPosY+tmptable.offsetHeight; tmpmenu.style.top=intPosY; tmpmenu.style.left=intPosX; tmpmenu.style.visibility='visible';}"
function hidemenu(tmpfield, tmpmenu) { var tmpelem=event.toElement; var inmenu=tmpmenu.contains(tmpelem); var infield=tmpfield.contains(tmpelem); if (!inmenu && !infield) { tmpmenu.style.visibility='hidden';}}"
</SCRIPT>

/kledal
Avatar billede grunken Nybegynder
31. august 2004 - 15:02 #1
Kan du ikke uddybe lidt mere, evt kaste et link til et eksempel ? :o)
Avatar billede kledal Nybegynder
31. august 2004 - 15:06 #2
desværre ikke, det ligger kun lokalt.
Jeg skal blot have defineret min intPosY parameter til at være "musens position +2pixels" eller noget sådant. Er der ikke en funtion der gør det i javascript?

/kledal
Avatar billede grunken Nybegynder
31. august 2004 - 15:19 #3
Kan du så ikke være sød at kaste kilden fra ovenstående side efter - at aspfortolkeren har gjort sit arbejde - er nemlig for doven til at sidde og gætte mig frem :o)
Avatar billede kledal Nybegynder
31. august 2004 - 15:24 #4
Det vil jeg da :-)
<html>
<head>
<meta NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</head>
<body BGCOLOR="#657BA5">
<link REL="stylesheet" TYPE="text/css" HREF="styles.css" TITLE="styles">
<table><tr><td><table width=100% cellpadding=5 cellspacing=0 border=0><tr></tr></tr></tr></tr></tr></tr></tr></tr><table  width=150 border=0 cellspacing=1 cellpadding=4 id=menupmf><tr><td id=menupmffield1 width= onmouseout="return hidemenu(document.all.menupmffield1, document.all.menupmfmenu1);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield1, document.all.menupmfmenu1);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=437">Uddannelse</a></base></span></td></tr><tr><td id=menupmffield2 width= onmouseout="return hidemenu(document.all.menupmffield2, document.all.menupmfmenu2);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield2, document.all.menupmfmenu2);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=438">Arbejdsmarked</a></base></span></td></tr><tr><td id=menupmffield3 width= onmouseout="return hidemenu(document.all.menupmffield3, document.all.menupmfmenu3);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield3, document.all.menupmfmenu3);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=439">Løn & ansættelse</a></base></span></td></tr><tr><td id=menupmffield4 width= onmouseout="return hidemenu(document.all.menupmffield4, document.all.menupmfmenu4);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield4, document.all.menupmfmenu4);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=440">TR-arbejdet</a></base></span></td></tr><tr><td id=menupmffield5 width= onmouseout="return hidemenu(document.all.menupmffield5, document.all.menupmfmenu5);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield5, document.all.menupmfmenu5);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=441">Hvervning</a></base></span></td></tr><tr><td id=menupmffield6 width= onmouseout="return hidemenu(document.all.menupmffield6, document.all.menupmfmenu6);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield6, document.all.menupmfmenu6);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=442">Børn og voksnes forhold</a></base></span></td></tr><tr><td id=menupmffield7 width= onmouseout="return hidemenu(document.all.menupmffield7, document.all.menupmfmenu7);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield7, document.all.menupmfmenu7);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=443">Diverse</a></base></span></td></tr><tr><td id=menupmffield8 width= onmouseout="return hidemenu(document.all.menupmffield8, document.all.menupmfmenu8);"><span onmouseover=" if (document.readyState=='complete') {return showmenu(document.all.menupmf, document.all.menupmffield8, document.all.menupmfmenu8);}" style="cursor:hand" class="menusub"><base target="MainFrame"><a href="/catalog.asp?comp=pmf&userpoolid=59&formatgroup=1&subpage=1&categoryid=444">Nyhedsbrev</a></base></span></td></tr></tr></table><table id=menupmfmenu1 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield1, document.all.menupmfmenu1);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81138">Elevlandsklubben</a></td></tr></table><table id=menupmfmenu2 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield2, document.all.menupmfmenu2);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="../../framecomp/group.asp?d=0&groupid=81134">Arbejdsmarkedspolitik</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81133">PMF A nyt</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81131">test</a></td></tr></table><table id=menupmfmenu3 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield3, document.all.menupmfmenu3);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81132">Arbejdsmiljø</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81137">Overenskomst orientering</a></td></tr></table><table id=menupmfmenu4 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield4, document.all.menupmfmenu4);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81141">test</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81135">TR Nyt</a></td></tr></table><table id=menupmfmenu5 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield5, document.all.menupmfmenu5);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81136">Medlemsstatistik</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81141">test</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81131">test</a></td></tr></table><table id=menupmfmenu6 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield6, document.all.menupmfmenu6);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81132">Arbejdsmiljø</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81141">test</a></td></tr></table><table id=menupmfmenu7 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield7, document.all.menupmfmenu7);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81139">EDB information</a></td></tr></table><table id=menupmfmenu8 cellpadding=0 cellspacing=0 border=0 onmouseout="return hidemenu(document.all.menupmffield8, document.all.menupmfmenu8);" style="position:absolute; left:0; top:0; visibility: hidden; z-index:3" class="menusub"><tr><td><a href="/group.asp?d=0&groupid=81133">PMF A nyt</a></td></tr><tr><td><a href="/group.asp?d=0&groupid=81141">test</a></td></tr><tr><td><a href="../../framecomp/group.asp?d=0&groupid=81135">TR Nyt</a></td></tr></table><SCRIPT> function showmenu(tmptable, tmpfield, tmpmenu) { var intPosY=0, intPosX=20, intTabletop, intTableleft; var currentelem=tmpfield; while (true) { intPosX=intPosX+currentelem.offsetLeft; intPosY=intPosY+currentelem.offsetTop; if (currentelem.offsetParent.tagName=='BODY') { break; } else { currentelem=currentelem.offsetParent;}} intPosY=intPosY+tmptable.offsetHeight; tmpmenu.style.top=intPosY; tmpmenu.style.left=intPosX; tmpmenu.style.visibility='visible';} function hidemenu(tmpfield, tmpmenu) { var tmpelem=event.toElement; var inmenu=tmpmenu.contains(tmpelem); var infield=tmpfield.contains(tmpelem); if (!inmenu && !infield) { tmpmenu.style.visibility='hidden';}}</SCRIPT></table></td></tr></table>

<!--<img SRC="menubar.gif" BORDER="0">-->

</body>
</html>

/kledal
Avatar billede Slettet bruger
31. august 2004 - 15:24 #5
grunken> Det må være noget i stil med det du hjalp mig med i går :)

event.clientX osv :)
Avatar billede grunken Nybegynder
31. august 2004 - 15:26 #6
Helt enig el_barto :o) - men funktionenerne så lige lidt rodet ud :o)

Kledal kigger på det :o)
Avatar billede Slettet bruger
31. august 2004 - 15:46 #7
Et enkelt linieskift villa da gøre det lidt nemmere ;)
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