Avatar billede reg_guy Nybegynder
15. november 2001 - 16:49 Der er 9 kommentarer og
3 løsninger

Random tekst

Hvordan laver man \"random tekst\" så den finder teksten i en fil og skifter hver gang man opdatere ???

(eksempel: filen hedder random.txt)
Avatar billede netz-dk Nybegynder
15. november 2001 - 17:02 #1
Brug denne kode og sæt din tekst ind der hvor der står tekst 1, tekst 2 osv... Så skulle de rotere...

<!-- Begin
var a = Math.random() + \"\"
var rand1 = a.charAt(5)
quotes = new Array
quotes[1] = \"Tekst 1\"
quotes[2] = \"Tekst 2\"
quotes[3] = \"Tekst 3\"
quotes[4] = \"Tekst 4\"
quotes[5] = \"Tekst 5\"
quotes[6] = \"Tekst 6\"
quotes[7] = \"Tekst 7\"
quotes[8] = \"Tekst 8\"
quotes[9] = \"Tekst 9\"
quotes[0] = \"Tekst osv...\"
var quote = quotes[rand1]
document.write(quote);
// End -->
Avatar billede netz-dk Nybegynder
15. november 2001 - 17:03 #2
usp... skriv lige
<script language=\"JavaScript\">
(tekst)
</script>

Glemte det...

- Netz.dk
Avatar billede netz-dk Nybegynder
15. november 2001 - 17:03 #3
den med filen bliver sværere... det ved jeg faktisk ikke...
Avatar billede nute Nybegynder
15. november 2001 - 17:04 #4
jeg ville helt klart ha brukt arrays til dette...ikke en fiol:

<html>
<head>
<script language=\"JavaScript\">
<!--

ns4 = (document.layers)? true:false
ns6 = ( document.getElementById ) ? true: false;
ie4 = (document.all)? true:false

var arrText, rnd, txt, counter;
counter = 0;

function randDisplay() {
    arrText = new Array(\"test\",\"test2\",\"test3\",\"test4\",\"test5\",\"test5\",\"test6\",\"test7\",\"test8\");
        rnd = Math.floor(Math.random() * arrText.length);
        txt    = arrText[ rnd ];
        if (ns4) {
            var layer = document.layers[\"randTxt\"].document
            layer.open()
            layer.write(txt)
            layer.close()
        }    else if (ie4){
            document.all[\"randTxt\"].innerHTML = txt
        }    else if( ns6 ){
          document.getElementById(\"randTxt\").innerHTML = txt;
        }
}

//-->
</SCRIPT>
<STYLE TYPE=\"text/css\">
<!--
#randTxt {position:absolute;left:10;top:10;background-color:#ffffff; layer-background-color:#ffffff;}
-->
</STYLE>
</HEAD>

<BODY onLoad=\"randDisplay();\">

<DIV ID=\"randTxt\"></DIV>
</BODY>
</HTML>


/nute
Avatar billede netz-dk Nybegynder
15. november 2001 - 17:05 #5
Håber du får det til at virke...

Husk!
<script....>
<!-- Begin
var a = Math.random() + \"\"
var rand1 = a.charAt(5)
quotes = new Array......
</script> !!
Avatar billede nute Nybegynder
15. november 2001 - 17:08 #6
netz-dk >> hva så hvis man kun har 2 eller 39 tekster man vil rotere med...så vil ikke ditt script fungere særlig godt :-|
Avatar billede ordinary Nybegynder
15. november 2001 - 19:48 #7
Hej reg_guy

Jeg er ude I to løsningsforslag, fordi det du beder om er et script der henter variabler i en txt fil, men så er du nødt til i mit tilfælde at deffinere på selve siden hvor mange citater du har i txt filen.
Hvis du derimod kun vil ændre et sted er løsningsforslag 2 bedre.

VH Jesper

løsningsforslag 1
<OBJECT ID=\"random\" WIDTH=0 HEIGHT=0 CLASSID=\"CLSID:333C7BC4-460F-11D0-BC04-0080C7055A83\">
  <PARAM NAME=\"TextQualifier\" VALUE=\"%\">
  <PARAM NAME=\"FieldDelim\" VALUE=\"|\">
  <PARAM NAME=\"DataURL\" VALUE=\"random.txt\">
</OBJECT>

<SCRIPT LANGUAGE=\"JavaScript\">
nummer=Math.round(Math.random()*5)+1
if(nummer==1){var citat=\"<span DATASRC=#random DATAFLD=Column1></span>\" }
if(nummer==2) {var citat=\"<span DATASRC=#random DATAFLD=Column2></span>\" }
if(nummer==3) {var citat=\"<span DATASRC=#random DATAFLD=Column3></span>\" }
if(nummer==4) {var citat=\"<span DATASRC=#random DATAFLD=Column4></span>\" }
if(nummer==5) {var citat=\"<span DATASRC=#random DATAFLD=Column5></span>\" }
if(nummer==6) {var citat=\"<span DATASRC=#random DATAFLD=Column6></span>\" }
document.write(citat)
</SCRIPT>


random.txt filen indeholder følgende:
%random tekst nr 1%|%random tekst nr 2%|%random tekst nr 3%|%random tekst nr 4%|%random tekst nr 5%|%random tekst nr 6%


eller løsningsforslag 2


<SCRIPT LANGUAGE=\"JavaScript\" src=random.js></SCRIPT>
<SCRIPT LANGUAGE=\"JavaScript\">
function VisCitat() {
var rand1 = (Math.round( (ArrCitat.length-1) * Math.random()) ) ;
return ArrCitat[rand1]
}
document.write(VisCitat());
</SCRIPT>


random.js filen indeholder følgende:

ArrCitat = new Array(\"Citat nummer1\", \"Citat nummer 2\", \"Citat nummer 3\", \"Citat nummer 4\", \"Citat nummer 5\", \"Citat nummer 6\")
Avatar billede reg_guy Nybegynder
15. november 2001 - 20:54 #8
Jeg tror jeg vil bruge løsning to eller noget...
der er godt nok mange forslag...
tester lige og ser hvad jeg får til at virker =)
Avatar billede reg_guy Nybegynder
15. november 2001 - 20:58 #9
En million gange tak til ordinary der kom med et genialt forslag, også tak til alle jer andre, hold kæft hvor jeg elsker det her sted, man kan sq også bare få hjælp til alt!!!

TAAAAAAAAAAAAAK
Avatar billede reg_guy Nybegynder
15. november 2001 - 21:03 #10
Alle tingene virker perfekt så i får allesammen nogle point, det er ikke så meget for jeg har ikke så meget, men jeg håber det er nok...
Avatar billede ordinary Nybegynder
16. november 2001 - 00:29 #11
Hej reg_guy
Det var et svært spørgsmål, men har fuld forståelse for det med points.

De andre var langt fra det du spurgte om, men ok.
Tak for points glad for at kunne hjælpe.

VH Jesper
Avatar billede reg_guy Nybegynder
16. november 2001 - 23:02 #12
ok, det er altid godt når man kan finde en løsning...
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