Avatar billede cliffclavin Nybegynder
09. juli 2004 - 14:17 Der er 21 kommentarer og
1 løsning

Randomizer med link

Hey!

Jeg har et script der kan vise en tilfældig tekst ud fra en liste. Nu vil jeg imidlertidig gerne have links på, sådan at hver tekst linker til et individuelt sted...

Den kan jeg ikke selv gennemskue.

Håber en kan hjælpe mig :o)

/CC

Mit script ser sådan ud:

<table width="95%" border="1" bordercolor="#006F60" bgcolor="#EFF5EB" cellspacing="0" cellpadding="2" class="norm">       
<tr>     
<td valign="top" align="center">     
<b>Vidste du at...</b><br>             
<script language="javascript">     
function text() {};     
text = new text();       
number = 0;       
// textArray       
text[number++] = "tekst1."       
text[number++] = "tekst2."
text[number++] = "tekst3."       
// keep adding items here...       
increment = Math.floor(Math.random() * number);       
document.write(text[increment]);       
</script>       
</td>       
</tr>       
</table>
Avatar billede skovenborg Nybegynder
09. juli 2004 - 14:20 #1
du kan lægge en link-url med din tekst:
text[number++] = ["tekst1.","http://www.side.com"]     
text[number++] = ["tekst2.","http://www.side.dk"]
text[number++] = ["tekst3.","http://www.side.net"]
increment = Math.floor(Math.random() * number);     
document.write("<a href='"+text[increment][1]+"'>"+text[increment][0]+"</a>");
Avatar billede roenving Novice
09. juli 2004 - 14:24 #2
Så skal man huske at erklære text som et Array():

function text() {};     
text = new Array();       
// textArray       
text[text.length] = ["tekst1.","http://www.side.com"];     
text[text.length] = ["tekst2.","http://www.side.dk"];
text[text.length] = ["tekst3.","http://www.side.net"];
     
// keep adding items here...       
increment = Math.floor(Math.random() * text.length);       
document.write(text[increment]);       
</script>

-- og en anelse mindre antal variable ...
Avatar billede roenving Novice
09. juli 2004 - 14:25 #3
Hov ...

-- og væk med

function text(){}
Avatar billede cliffclavin Nybegynder
09. juli 2004 - 14:28 #4
Det var hurtigt!.. tak - jeg går straks igang...

/CC
Avatar billede cliffclavin Nybegynder
09. juli 2004 - 14:35 #5
Jeg tror den er gået lidt galt med points - hvordan kan den reddes..?
Avatar billede skovenborg Nybegynder
09. juli 2004 - 14:36 #6
ser ud til at være ordnet nu... :-)
Avatar billede cliffclavin Nybegynder
09. juli 2004 - 15:01 #7
Hmmm - noget går hen over mit stakkels hoved...

- er der givet point eller hvordan hænger det sammen...?
Avatar billede skovenborg Nybegynder
09. juli 2004 - 15:24 #8
næh, du afviste dit eget svar - så pointene er her stadig. Ellers ville spørgsmålet have et blåt flag
Avatar billede cliffclavin Nybegynder
12. juli 2004 - 11:05 #9
- men den pointting der kom frem da jeg afviste mit eget svar... er der ikke mer'.. så det er lidt svært at give point nu.
Avatar billede cliffclavin Nybegynder
12. juli 2004 - 11:06 #10
åh.. mon det er fordi at man kun kan give point til 'svar' og ikke til 'kommentar'.. lyder rigtigt eller hva?
Avatar billede roenving Novice
12. juli 2004 - 12:56 #11
Jeps !-)
Avatar billede skovenborg Nybegynder
12. juli 2004 - 14:38 #12
vil du gerne lukke sprøgsmålet nu - så vi svarer og du kan acceptere bagefter...
Avatar billede skovenborg Nybegynder
12. juli 2004 - 14:39 #13
...men kun hvis du har fået det til at virke ;-)
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 10:23 #14
hmm.. jeg kan ikke få det til at virke... måske jeg har misforstået svarene..

Lige nu ser det sådan ud:


<table width="95%" border="1" bordercolor="#006F60" bgcolor="#EFF5EB" cellspacing="0" cellpadding="2" class="norm">       
<tr>     
<td valign="top" align="center">     
<b>Vidste du at...</b><br>

<script language="javascript">       
text = new Array();       
// textArray       
text[text.length] = ["tekst1.","http://www.side.com"];     
text[text.length] = ["tekst2.","http://www.side.dk"];
text[text.length] = ["tekst3.","http://www.side.net"];
     
// keep adding items here...       
increment = Math.floor(Math.random() * number);     
document.write("<a href='"+text[increment][1]+"'>"+text[increment][0]+"</a>");   
</script>
 
</td>       
</tr>       
</td>       
</tr>       
</table>
Avatar billede skovenborg Nybegynder
13. juli 2004 - 12:08 #15
medmindre du har defineret number-variablen et andet sted, bliver du nødt til at gøre sådan her:
<script language="javascript">     
text = new Array();
// textArray
text[text.length] = ["tekst1.","http://www.side.com"];
text[text.length] = ["tekst2.","http://www.side.dk"];
text[text.length] = ["tekst3.","http://www.side.net"];
   
// keep adding items here...     
increment = Math.floor(Math.random() * text.length);
document.write("<a href='"+text[increment][1]+"'>"+text[increment][0]+"</a>"); 
</script>
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 12:13 #16
Det virker fint nu - tak for hjælpen! En sidste ting er, for jeg er ikke god til det, hvordan styrer jeg farve på tekst og links.. hvis det er muligt..?

Og send som svar så du kan få lidt point.
Avatar billede skovenborg Nybegynder
13. juli 2004 - 12:41 #17
du kan i et stylesheet definere farverne, så her:
body {color:#000;} /* tekst */
a {color:#f00;} /* links */

eller hvis du vil have seperate farver på de links som du skriver ud med scriptet:
a.randomlink {color:#00f;}
og så skrive:
document.write("<a href='"+text[increment][1]+"' class='randomlink'>"+text[increment][0]+"</a>");
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 12:55 #18
Damn good!.. tak for hjælpen!
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 12:57 #19
Nu har jeg klikket Acceptér... men der sker ikke rigtigt noget.. Har du fået dine point osv.?
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 12:57 #20
OK.. der var den!
Avatar billede cliffclavin Nybegynder
13. juli 2004 - 13:30 #21
Hvor sætter jeg
a.randomlink {color:#006F60;}   
ind henne..?
Avatar billede skovenborg Nybegynder
13. juli 2004 - 20:10 #22
i dit stylesheet hvis du har sådan et (en .css fil) som du sætter ind på siden sådan her:
<head>....
....
<link rel="stylesheet" href="filnavn.css" type="text/css" />
...
</head>

eller blot sådan her:
<head>
....
<style type="text/css">
a.randomlink {color:#006F60;} 
</style>
....
</head>
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