17. februar 2009 - 00:02
Der er
7 kommentarer
Hjælp til at vise resten af en nyhed
Hej, Jeg er igang med at lave et nyhedssystem, men jeg har bestemt mig for at nyhederne skal stå på en samlet side. For at det ikke går helt amok hvis jeg skriver en for lang nyhed, har jeg valgt at der vises 200 af de første tegn af nyheden, og hvis der er mere tekst skal man kunne klikke på [vis resten] Spørgsmålet er, hvordan jeg laver så resten af teksten vises når man klikker? Jeg søger en løsning på dette i Javascript.
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
17. februar 2009 - 09:47
#1
du kan lave en div med de første 200 tegn som du skjuler når man vælger vis mere og så viser den en anden div med hele nyheden...
17. februar 2009 - 17:14
#2
...eller du kan lægge de resterende tegn ind i en span, som du starter med at skjule, for derefter at vise, når man trykker på "læs mere"?
17. februar 2009 - 17:19
#3
Et meget simpelt script (utestet): <script type="text/javascript"> <!-- function skjul(id) { document.getElementById("nyhed" + id).style.display = "none"; document.getElementById("nyhed" + id + "k").innerHTML = "<a href="java script:vis(1)">Læs mere</a>"; } function vis(id) { document.getElementById("nyhed" + id).style.display = "inline"; document.getElementById("nyhed" + id + "k").innerHTML = "<a href="java script:skjul(1)">Læs mindre</a>"; } // --> </script> sdklfj sdlkfjsklf jsdlkfj sdlkfj lksdjf lksdjfl ksdjflksdjf lkdsjf lksdjfl kdsjflk dsjflk sdjlfk jdslkf<span style="display:none;" id="nyhed1">lk dslkjf dlskfj sldkfj lkdsfj skldfj lksdjf lskdjflk dsjf lsdkjf lksdjf lkdsjflkdsjf lksdjflk sdjf lksdjflk sdjlfksdj kljlkjlk</span><span id="nyhed1k"><a href="java script:vis(1)">Læs mere</a></span>
17. februar 2009 - 17:28
#4
Okay, det var alligevel for dårligt skrevet. Her er det rettet lidt :-) <html> <head> <script type="text/javascript"> <!-- function skjul(id) { document.getElementById("nyhed" + id).style.display = "none"; document.getElementById("nyhed" + id + "k").innerHTML = "<a href=\"java script:vis(" + id + ")\">Læs mere</a>"; } function vis(id) { document.getElementById("nyhed" + id).style.display = "inline"; document.getElementById("nyhed" + id + "k").innerHTML = "<a href=\"java script:skjul(" + id + ")\">Læs mindre</a>"; } // --> </script> </head> <body> <div id="n1"> sdklfj sddlkdsjflks dflksdjf lksdjf lksdflksdflksdjlfk dslkf dslkfj sdlkfjdslf kdsflkfjsklf jsdlkfj sdlkfj lksdjf lksdjfl ksdjflksdjf lkdsjf lksdjfl kdsjflk dsjflk sdjlfk jdslkf<span style="display:none;" id="nyhed1">lk dslkjf dlskfj sldkfj lkdsfj skldfj lksdjf lskdjflk dsjf lsdkjf lksdjf lkdsjflkdsjf lksdjflk sdjf lksdjfd.s,f dsf dslkjfdslkjf lksdfj lkdsjfl ksdj flkdsj flkdsj f lkdsj f kldsjflkds jflksdjf lkdsjflk sdjlfk jsdlfk jsdlkf jdslkf jdslkfjlk sdjlfksdj kljlkjlk</span><br> <span id="nyhed1k"><a href="java script:vis(1)">Læs mere</a></span> </div> </body> </html>
17. februar 2009 - 17:30
#5
Med lidt snilde kan man lave en funktion, der automatisk oprettet den span, der skal til, automatisk laver den funktion, der skal til. På den måde viser man kun de første 250 tegn hvis javascript er aktiveret - brugere uden js kan da se hele filen.
26. august 2009 - 17:36
#6
Hmm... Det var vel et svar...
04. november 2010 - 11:17
#7
kan vi lukke hér?
Vi tilbyder markedets bedste kurser inden for webudvikling