Avatar billede chrisrj Forsker
03. januar 2003 - 10:54 Der er 7 kommentarer og
1 løsning

Tilretning af menu 2

Som fortsættelse af http://www.eksperten.dk/spm/300024 ønsker jeg nu at menuen ikke klapper sammen når brugeren er inde på det pågældende menupunkt.

Eksempel:

Menupunkt 1
Menupunkt 2
  UnderMenupunkt 2-1
  UnderMenupunkt 2-2
Menupunkt 3
  UnderMenupunkt 3-1
  UnderMenupunkt 3-2
Menupunkt 4

Brugeren klikke på f.eks.  UnderMenupunkt 2-2

Så ser menuen sådan ud når siden loades:

Menupunkt 1
Menupunkt 2
Menupunkt 3
Menupunkt 4

Den burde se sådan ud:

Menupunkt 1
Menupunkt 2
  UnderMenupunkt 2-1
  UnderMenupunkt 2-2
Menupunkt 3
Menupunkt 4


Her er min menu kode:

<body onLoad="skiftKlasse(0,'none','showit','hideit','div');skiftKlasse(0,'none','mnbutblank','mnplus','img');skiftKlasse(0,'none','expblank','expandit','img');skiftKlasse(0,'none','expblank2','expandit2','img'); showHideLayers('HideOnloadDiv','','hide');">
        <div id="HideOnloadDiv" style="position:absolute; left:0px; top:0px; width:100%; height:100%; background-color:#ffffff; visibility:visible; z-index:2"></div>
        <div id="Layer1" style="position:absolute; left:25px; top:25px; width:160px; z-index:1">
            <p class="oclinks">
                <a href="java script:;" onClick="skiftKlasse(0,'none','hideit','showit','div');skiftKlasse(0,'none','mnplus','mnminus','img')">
                    <br>
                    <strong>&Aring;ben</strong></a> | <a href="java script:;" onClick="skiftKlasse(0,'none','showit','hideit','div');skiftKlasse(0,'none','mnminus','mnplus','img')">
                    <strong>Luk</strong></a>
            </p>
            <br>
            <br>
            <!-- #include file="databaseconn.asp" -->
            <%
                tal = 1
                under = 0
                SQL = "SELECT * FROM menu"
                Set rs = Conn.Execute(SQL)
               
                do while not rs.eof
                    SQL = "SELECT * FROM undermenu where menuid='" & rs("id") & "'"
                    Set res = Conn.Execute(SQL)
                    under = 0
                    if not res.eof then
                        under = 1
                        response.Write "<p class=""mndivhdr"" onClick=""skiftKlasse(1,'mn" & tal & "','showit','hideit','div');skiftKlasse(1,'but" & tal & "','mnminus','mnplus','img')"">" & vbCrLf
                        response.Write rs("navn") & "</P>" & vbCrLf
                    else
                        'response.Write "<p class=""mndivhdr"">"
                        insert_link "mndivhdr", rs("link"), rs("navn")
                        response.Write "</p>" & vbCrLf
                    end if
                    if not res.eof then
                        under = 1
                        response.Write "<div id=""mn" & tal & """ class=""hideit"">" & vbCrLf
                        do while not res.eof
                            'response.Write "<p class=""sublinks"">"
                            insert_link "sublinks", res("link"), res("navn")
                            response.Write "</p>" & vbCrLf
                            res.movenext
                        loop
                    end if

                    if under = 1 then
                        response.Write "</div>" & vbCrLf
                    end if
                    rs.movenext
                    tal = tal + 1
                loop
               
            %>
        </div>

Siden kan ses her:  http://80.160.119.108/miljoselskab/www/index.asp?page=forside.asp

log ind med exp og exp
Avatar billede chrisrj Forsker
03. januar 2003 - 11:19 #1
Jeg beklager, siden skulle virke nu. Det er RET langsom, så hav tolmodighed. :)
Avatar billede chrisrj Forsker
03. januar 2003 - 12:14 #2
Er der virkelig ingen der har bare en lille ide om hvordan det skal/kan gøres???

HJÆÆLP!!
Avatar billede soes Nybegynder
03. januar 2003 - 14:53 #3
du maa da lige have lidt taalmodighed. Hvis du havde vaeret smart saa havde du lige putte nogle kommentar/bemaerkninger ind i din kode, saa andre udeforstaaende personer, hvilket vil sige mig blandt andet, ville have nemmer ved at overskue din kode!!! Det er da noget sammenrodet noget du har i toppen, og hvad goer de forskellige funktioner osv.
Avatar billede chrisrj Forsker
03. januar 2003 - 16:29 #4
Det er ikke mig der har lavet html'en eller css'en. Det er pelkjaer http://www.eksperten.dk/bruger.phtml?navn=pelkjaer

Jeg har bare lavet ASP'en.

Funktionen insert_link er her:

sub insert_link(class_ccs, link, name)
dim aQueryParams
dim aUrl

aUrl = Request.ServerVariables("url") ' get the url (index.asp)
aQueryParams = Request.QueryString ' get the querystring (page=*.asp)


if ( (aUrl & "?" & aQueryParams) = ("/miljoselskab/www/" & link)) then
    Response.Write "<img src=""grafik/pil.gif"" align=""absmiddle"" class=""billede""><p class=""" & class_ccs & """><a href=""" & link & """>"
else
    Response.Write "<p class=""" & class_ccs & """><a href=""" & link & """>"
end if
Response.Write name & "</a>"
end sub

Den undersøger om den nuværende side er i menuen, hvis den sætter den en pil ud for menu punktet.

Udmiddelbart ville jeg sige at det er et java/css problem, men pelkjaer siger at det er et ASP problem.

Jeg kan godt post'e de 3 javascript funktioner, men jeg tror ikke man ville kunne få ret meget ud af det. De er nemlig, for mig i hvert fald, totalt uoverskuelige - selv i sammenligning til min kode.
Avatar billede soes Nybegynder
03. januar 2003 - 18:43 #5
har du proevet at udskrive dette stykke kode, aUrl & "?" & aQueryParams, samt, ("/miljoselskab/www/" & link). Herved kan du se paa skaermen hvis det er i din asp del at der er en fejl. Det er jo temmelig logisk at hvis de to strenge ikke er identiske saa vil den jo ikke indsaette noget billede.
Avatar billede chrisrj Forsker
03. januar 2003 - 19:44 #6
Jeg tror du har misforstået problemet.

Ovenstående kode virker 100%.

Problemet er at menuen klapper sammen når siden loades.

Det jeg gerne vil, er at tjekke om brugeren er på en af de sider der er i undermenuerne. Hvis det er, så skal den undermenu ikke klappes sammen.
Avatar billede chrisrj Forsker
04. januar 2003 - 15:16 #7
Er der nogen bud, nu her hvor eksperten er oppe igen??
Avatar billede chrisrj Forsker
07. februar 2003 - 10:18 #8
lukket
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
Kurser inden for grundlæggende programmering

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