Avatar billede hoejgaard Juniormester
22. oktober 2007 - 00:36 Der er 19 kommentarer og
1 løsning

link medfører tekst uden sideskift

Hej
Jeg søger et script hvor man kan klikke på et link, hvilket medfører at der så skal skrives en bestemt tekst på siden, uden at der skiftes side..
håber i forstår hvad jeg mener..
Avatar billede nicolaib Praktikant
22. oktober 2007 - 00:47 #1
Så skal du over og have fat i noget JavaScript.
Ham her viser f.eks en masse scripts
http://www.vicsjavascripts.org.uk/Home.htm
Avatar billede w13 Novice
22. oktober 2007 - 02:57 #2
Følgende skulle gøre det:
--------------------------------------------
<script type="text/javascript">
function InsertText(txt){
var elm=document.getElementById('insertedtext');
elm.style.display="inline";
elm.appendChild(document.createTextNode(txt));
}
</script>

<span style="cursor:pointer" onclick="InsertText('Tekst her')">Indsæt tekst</span>

<div id="insertedtext" style="display:none"></div>
Avatar billede w13 Novice
22. oktober 2007 - 02:57 #3
Hov, ja, du er ude i en forkert kategori.
Avatar billede nicolaib Praktikant
22. oktober 2007 - 16:05 #4
Hov mit skulle ikke have været et svar. Beklager. Du må hellere lukke og bringe den over i JavaScript-kategorien.
Avatar billede w13 Novice
22. oktober 2007 - 18:36 #5
Hoejgaard>> Du opretter bare et svar og giver dig selv point.
Avatar billede hoejgaard Juniormester
22. oktober 2007 - 23:57 #6
w13
nej du skal da have pointsne :-)
Har ikke fået afprøvet det endnu, gør det imorgen..
Avatar billede w13 Novice
23. oktober 2007 - 00:15 #7
Ok. Hvis det virker, så er her et svar.
Avatar billede hoejgaard Juniormester
23. oktober 2007 - 02:14 #8
w13
har nu afprøvet det, og det virker lidt henad det jeg gerne vil, men som det er nu skrives "tekst her" hver gang man klikker på linket, og det skal det også, men det skal bare stå på samme sted og ikke skrives på en lang linie hvis du forstår..
Det andet jeg gerne vil have er, at teksten helst skal skrives i en anden tabel end den hvor linket er, og som det er nu, kan jeg åbenbart ikke flytte
<div id="insertedtext" style="display:none"></div>
til en anden tabel eller celle...
Kan du hjælpe med det ?
Avatar billede w13 Novice
23. oktober 2007 - 03:27 #9
Når du skriver, at det skal skrives samme sted, og ikke på en lang linje, mener du så, at det kun skal kunne stå der én gang, eller at der skal være linjeskift imellem?

Og du skulle meget gerne kunne flytte: <div id="insertedtext" style="display:none"></div>
til et andet sted.

Ellers må du vise mig din nuværende kode.
Avatar billede hoejgaard Juniormester
23. oktober 2007 - 14:42 #10
w13
her er koden :

Sriptet står i HEAD sektionen og her er resten :

<table class="table2" cellspacing="0" cellpadding="0">
<tr><td><li>&nbsp;</li></td><td class="td26" align="left"><a href="java script:sendEvent('playitem',0)"><span style="cursor:pointer" onclick="InsertText('Tekst her')">video, Billede.&nbsp;<IMG  class="IMG1" SRC="arrows_trans.gif"></span></a></td><div id="insertedtext" style="display:none"></div></tr>
</table>

<table class="table2" cellspacing="0" cellpadding="0">
<tr><td><p id="player"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this movie.</p></td></tr>
</table>

Jeg vil gerne ha teksten til at stå over playeren i den nederste table, når man klikker på linket i den øverste table. Teksten er en titel for det der bliver afspillet i playeren.
Teksten skal derfor skrives hvergang man klikker på linket, men selvfølgelig ikke andre steder end i den pågældende celle.. Håber du forstår..
Avatar billede w13 Novice
23. oktober 2007 - 17:43 #11
Det burde virke, hvis du bare sætter: <div id="insertedtext" style="display:none"></div>
ind, hvor teksten skal vises i cellen og så retter script-koden til:

<script type="text/javascript">
function InsertText(txt){
var elm=document.getElementById('insertedtext');
if(elm.hasChildNodes) elm.removeNode(elm.firstChild);
elm.appendChild(document.createTextNode(txt));
elm.style.display="inline";
}
</script>

Det er ikke testet, men burde virke.
Avatar billede hoejgaard Juniormester
24. oktober 2007 - 01:48 #12
w13
okay mange tak, checker det og vender tilbage.
Avatar billede hoejgaard Juniormester
24. oktober 2007 - 02:12 #13
w13
nu bliver der slet ikke skrevet noget når jeg klikker på linket...?
Avatar billede w13 Novice
24. oktober 2007 - 03:13 #14
Bli'r der, hvis du fjerner:

if(elm.hasChildNodes) elm.removeNode(elm.firstChild);

?
Avatar billede hoejgaard Juniormester
26. oktober 2007 - 00:53 #15
w13
ja så skriver den "tekst her" men det bliver ikke skrevet på samme plads som jeg gerne vil have, men sådan her "Tekst herTekst herTekst herTekst herTekst herTekst herTekst herTekst herTekst herTekst her"
Avatar billede w13 Novice
26. oktober 2007 - 00:58 #16
Så gør vi sådan her:

<script type="text/javascript">
function InsertText(txt){
var elm=document.getElementById('insertedtext');
elm.replaceChild(document.createTextNode(txt),elm.firstChild);
elm.style.display="inline";
}
</script>

Så skal du bare lige skrive 0 inde i dit div-element. Det må nemlig ikke være blankt til at begynde med.
Avatar billede hoejgaard Juniormester
26. oktober 2007 - 01:27 #17
øhh hvor skal det 0 stå i div elementet..??
Avatar billede hoejgaard Juniormester
26. oktober 2007 - 01:29 #18
ja okay er med..prøver det lige.
Avatar billede hoejgaard Juniormester
26. oktober 2007 - 01:33 #19
w13
det virker bare som det skal !
Mange mange tak for din hjælp, det var dejligt !
Avatar billede w13 Novice
26. oktober 2007 - 03:04 #20
Det var så lidt. =)
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