Avatar billede lmejding Nybegynder
21. juli 2005 - 14:02 Der er 13 kommentarer og
1 løsning

Vis/skjul info i boks (ligesom i reklarmer)

Hej
Jeg har brug for at mine brugere kan klikke på et link for at få en forklaring på ordet eller begrebet i en tekst.
Når kan klikker på ordet skal der vises en boks (ligesom reklamerne på denne side). I denne boks skal man kunne klikke sig videre til side 2, side 3 og evt. side 4 - inden i boksen.
Man skal kunne klikke på et X for at lukke/skjule boksen.

Hvordan gør jeg det?
Avatar billede Slettet bruger
21. juli 2005 - 14:06 #1
javascript filen:

function toggleGallery(recordID) {
  objRecord = GetElement(recordID);
  objRecord.style.visibility = (objRecord.style.visibility=="visible" ? "hidden" : "visible");
}
function toggleView(recordID) {
  objRecord = GetElement(recordID);
  objRecord.style.display = (objRecord.style.display=="block" ? "none" : "block");}

function GetElement(strElement) {
        if (document.getElementById) {
                // IE5+, Netscape 6, Mozilla
                return (document.getElementById(strElement));}
        else if (document.all) {
                // IE4
                return (eval("document.all." + strElement));}
        else if (document.layers) {
                // Netscape 4
                return (eval("document." + strElement));}
        else {
                // Crap!
                return (null);}
}

--
linket til forklaringen skal se således ud:

<a href="#" onclick="toggleView('..');">tekst</a>
--
indholdet af forklaringen:

<div id=".." style="display:block;">forklaringen</div>


så skal du udskifte .. med et navn på forklaringen.. du skal huske at det skal være det samme i både linket og <div>-boksen!
Avatar billede roenving Novice
21. juli 2005 - 14:11 #2
Bare lav et element, hvor der indeni er et andet element, f.eks.

<div onclick="st=document.getElementById('forklaring1').style;st.display=st.display!='block'?'block':'none';" style="cursor:pointer;">
  Dette er en ganske almindelig tekst ...
  <div id="forklaring1" style="display:none;">
    Her er der en længere forklaring<br>
    Som sikkert fylder en hel masse<br>
    <span onclick="this.parentNode.style.display='none';event.cancelBubble=true;">Luk forklaring</span>
  </div>
</div>

-- jeg er her gået udfra, at det kun er nyere browsere, som kommer forbi !-)
Avatar billede lmejding Nybegynder
21. juli 2005 - 14:12 #3
Hej gandso,
Super!
Tak for dit hurtige svar - jeg har lige én mere:
Jeg vil gerne have et teksten ikke rykker sig, men at boksen med forklaringen "lægger" sig oven på den eksistrende tekst. - er det noget layer-noget??
Avatar billede roenving Novice
21. juli 2005 - 14:13 #4
PS. Grunden til at jeg bruger !='block' er, at du så kan tillade dig at sætte style-properties (herunder display !-) i et style-sheet ...
Avatar billede roenving Novice
21. juli 2005 - 14:15 #5
Sådan, så:

<div id="minDiv">En div-tekst</div>
<span id="minSpan">En span-tekst</span>
<div onclick="st=document.getElementById('forklaring1').style;st.display=st.display!='block'?'block':'none';" style="cursor:pointer;">
  Dette er en ganske almindelig tekst ...<br>
  <div id="forklaring1" style="display:none;position:absolute;background:white;">
    Her er der en længere forklaring<br>
    Som sikkert fylder en hel masse<br>
    <span onclick="this.parentNode.style.display='none';event.cancelBubble=true;">Luk forklaring</span>
  </div>
</div>
tekst
Avatar billede lmejding Nybegynder
21. juli 2005 - 14:18 #6
Wow - tak også til roenving!
Hvilke browsere understøtter?
Avatar billede roenving Novice
21. juli 2005 - 14:26 #7
Alle browsere, som er nyere end 2001, desuden også IE5 ...

-- jeg er selv holdt op med at understøtte v4-browserne, men ellers kan man bruge en funktion, som ligner den gandso har lavet, men huske, at style ikke er et selvstændigt objekt i Nestscape 4 (og span-tingen skal så også ændres !-)
Avatar billede lmejding Nybegynder
21. juli 2005 - 14:29 #8
roenving - tak - svid et svar.

Håber det er ok - gandso? også tak til dig!
Avatar billede Slettet bruger
21. juli 2005 - 14:33 #9
så lidt
Avatar billede roenving Novice
21. juli 2005 - 14:37 #10
Velbekomme '-)
Avatar billede roenving Novice
22. juli 2005 - 14:38 #11
-- og tak for point ;~}
Avatar billede lmejding Nybegynder
12. marts 2008 - 14:56 #12
oh oh - længe siden denne blev skrevet. Jeg har lige et spr til den..
Når den er åben lukkes den lige meget hvor jeg klikker på den. Det duer jo ikke hvis jeg vil lade folk indtaste f.eks. tf nr inden i forklaring1

Har nogen et bud?
Avatar billede roenving Novice
12. marts 2008 - 15:29 #13
-- øeh, umiddelbart lyder det meget ulogisk at man skal indtaste noget i en forklaring ...
Avatar billede lmejding Nybegynder
12. marts 2008 - 15:58 #14
fair nok - det er jo nogle år siden den startede - denne gang er det meningen at folk skal kunne taste en mobil nummer og herefter kunne sende den - altså en form.
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