Avatar billede c-lund Nybegynder
22. marts 2006 - 15:23 Der er 9 kommentarer og
1 løsning

Div show

hey, jeg har det her script, som jeg har 2 spørgsmål til.
1.) når man klikker på vis mere, kan det så skifte tekst til skjul og tilbage igen når man har trykker skjul?
2.) Som det er nu, kan jeg åbner flere links, men det må gerne være sådan at hvis der er et åben og man trykker på en anden, lukker den første og den anden åbner
--------------
<script language="javascript">
      function showlayer(layerID) {
          var tmp = eval('document.getElementById(layerID).style.display');
          if(tmp == 'none') {
              document.getElementById(layerID).style.display="";
          } else {
                document.getElementById(layerID).style.display="none";
            }
        }
</script>

<a href="#" onclick="showlayer('detaljer');">Se mere</a>

        <div id="detaljer" style="display:none;">
            Jeg kommer så frem efter et enkelt klik :)
        </div>

    <br>
   
    <a href="#" onclick="showlayer('detaljer1');">Se mere</a>

        <div id="detaljer1" style="display:none;">
            Jeg kommer så frem efter et enkelt klik :)
        </div>
Avatar billede roenving Novice
22. marts 2006 - 15:55 #1
Sagtens, f.eks.

<script language="javascript">
var oldElm = null;
      function showlayer(layerID) {
          var elm = document.getElementById(layerID),tmp = elm.style.display;
          if(oldElm)
            oldElm.style.display = "none";
          oldElm = elm, elm = elm.style;
          if(tmp == 'none')
              elm.display="";
          else
              elm.display="none";
      }
</script>
Avatar billede c-lund Nybegynder
22. marts 2006 - 16:01 #2
tak, hvad med at vis mere skifter til skjul
Avatar billede roenving Novice
22. marts 2006 - 17:22 #3
Ovenstående sørger for, at kun een kan være vist ...
Avatar billede c-lund Nybegynder
22. marts 2006 - 17:25 #4
ja, men kan man også lave det sådan at når man klikker på "vis mere" skrifter navnet til "Skjul" og omvendt?
Avatar billede roenving Novice
22. marts 2006 - 17:44 #5
Jepz, så skal du også medsende referencen til linket:

    <a href="#" onclick="showlayer('detaljer1',this);">Se mere</a>

-- og funktionen skal så udbygges til:

<script language="javascript">
var oldElm = oldA = null;
      function showlayer(layerID,link) {
          var elm = document.getElementById(layerID),tmp = elm.style.display;
          if(oldElm){
            oldElm.style.display = "none";
            oldA.firstChild.nodeValue = "Se mere";
          }
          oldElm = elm, oldA = link, elm = elm.style;
          if(tmp == 'none'){
              elm.display="";
              link.firstChild.nodeValue = "Skjul";
          }else{
              elm.display="none";
              link.firstChild.nodeValue = "Se mere";
          }
      }
</script>
Avatar billede c-lund Nybegynder
27. marts 2006 - 20:03 #6
kan man når der bliver trykket "vis mere" samtidig opdatere noget i en database?
det andet virker helt fint, tak for hjælpen :)
Avatar billede roenving Novice
29. marts 2006 - 18:33 #7
For at opdatere noget i databasen skal man sende en http-request til serveren, så det vil man typisk gøre ved at reloade siden, reloade en iframe eller måske skrive noget i en cookie, så det kan huskes og aflæses næste gang siden loades !-)
Avatar billede c-lund Nybegynder
09. maj 2006 - 12:17 #8
smider du lige et svar?
Avatar billede roenving Novice
09. maj 2006 - 13:47 #9
Oki '-)
Avatar billede roenving Novice
27. september 2006 - 12:35 #10
-- og tak for point ;~}
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