Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 12:23 Der er 15 kommentarer og
1 løsning

En div med flere links, eller hvilken metode her?

Hej Eksperter!

Jeg kunne godt tænke mig at få et lille script, hovr jeg kan have nogle links, x antal... måske 10 links på en HTML side i venstre side, og i højre side har jeg eksempelvis en <div> boks, hvor når jeg trykker på link nr. 1 kommer teksten frem som hører til nummer 1 link, og link nr. 2 viser tekst nr. 2...

Det er simpelt nok, bortset fra jeg ikke kan javascript :) eller dhtml.

Det skal laves dynamisk, så det er muligt vha. PHP at udskrive flere links og tekster fra tabellen (hvis nu man havde en tabel med (id,linkbeskrivelse,tekstbeskrivelse)

På forhånd mange tak
Avatar billede elskermad.dk Nybegynder
26. oktober 2003 - 12:27 #1
<html>
<head>
<script type='text/javascript'>
function menutekst(x) {
    var tekst = new Array(
    "",
    "om siden",
    "læs hvordan vi mener en hjemmeside skal være",
    "kig produkterne igennem, eller fortæl os dine ønsker",
    "priserne er små",
    "se nogen af de sider som vi har lavet",
    "kontakt os for mere infomation"
    );
   
    document.getElementById('menuinfo').innerHTML=tekst[x];
}
</script>
</head>
<body>
        <a href='?side=profil' class='topmenu' onMouseOver='menutekst(1)' onMouseOut='menutekst(0)'>profil</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=vision' class='topmenu' onMouseOver='menutekst(2)' onMouseOut='menutekst(0)'>vision</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=produkter' class='topmenu' onMouseOver='menutekst(3)' onMouseOut='menutekst(0)'>produkter</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=priser' class='topmenu' onMouseOver='menutekst(4)' onMouseOut='menutekst(0)'>priser</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=referencer' class='topmenu' onMouseOver='menutekst(5)' onMouseOut='menutekst(0)'>referencer</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=kontakt' class='topmenu' onMouseOver='menutekst(6)' onMouseOut='menutekst(0)'>kontakt</a>
</body>
</html>
Avatar billede elskermad.dk Nybegynder
26. oktober 2003 - 12:29 #2
hovsa da.. havde da li glemt det vigtige ;D

<html>
<head>
<script type='text/javascript'>
function menutekst(x) {
    var tekst = new Array(
    "",
    "om siden",
    "læs hvordan vi mener en hjemmeside skal være",
    "kig produkterne igennem, eller fortæl os dine ønsker",
    "priserne er små",
    "se nogen af de sider som vi har lavet",
    "kontakt os for mere infomation"
    );
   
    document.getElementById('menuinfo').innerHTML=tekst[x];
}
</script>
</head>
<body>
        <a href='?side=profil' class='topmenu' onMouseOver='menutekst(1)' onMouseOut='menutekst(0)'>profil</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=vision' class='topmenu' onMouseOver='menutekst(2)' onMouseOut='menutekst(0)'>vision</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=produkter' class='topmenu' onMouseOver='menutekst(3)' onMouseOut='menutekst(0)'>produkter</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=priser' class='topmenu' onMouseOver='menutekst(4)' onMouseOut='menutekst(0)'>priser</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=referencer' class='topmenu' onMouseOver='menutekst(5)' onMouseOut='menutekst(0)'>referencer</a>&nbsp;&nbsp;&nbsp;::&nbsp;&nbsp;
        <a href='?side=kontakt' class='topmenu' onMouseOver='menutekst(6)' onMouseOut='menutekst(0)'>kontakt</a>

<div id='menuinfo' style='width:100%'></div>
</body>
</html>
Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 12:36 #3
Det skal være når man trykker på linket.. hvad hedder det? onMouseDown?
Avatar billede roenving Novice
26. oktober 2003 - 12:38 #4
-- og i selve funktionen er der ikke så meget grund til at genskabe Arrayet hver gang, så det kan flyttes udenfor:

<script type='text/javascript'>
    var tekst = new Array(
    "",
    "om siden",
    "læs hvordan vi mener en hjemmeside skal være",
    "kig produkterne igennem, eller fortæl os dine ønsker",
    "priserne er små",
    "se nogen af de sider som vi har lavet",
    "kontakt os for mere infomation"
    );
function menutekst(x) {
    document.getElementById('menuinfo').innerHTML=tekst[x];
}
</script>

-- og i princippet kan ovenstående godt udskrives dynamisk, f.eks. i løkke skrive teksterne:

<script type="text/javascript">
var tekst = new Array(
for(enellerandenoptælling){
echo"<%res(tekstbeskrivelse)%>,";
}
...
Avatar billede roenving Novice
26. oktober 2003 - 12:39 #5
onclick !-)
Avatar billede elskermad.dk Nybegynder
26. oktober 2003 - 12:59 #6
argh man må vel lærer det engang!
Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 13:07 #7
Okay, jeg har fået det til at virke med php osv.. det eneste jeg bare lige vil have, er med flere felter?

Det er til sådan noget "ofte stillede spørgsmål"...

Så der vil være:

spg, svar, link(ikke alle der er tilhørende link til), kategori

Hvor nu har jeg bare "spg" man kan trykke på, og så skriver den spørgsmålet i <div>

Men jeg vil jo også gerne have den skriver svaret til spørgsmålet heh ;)
Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 13:10 #8
Detjeg har indtil videre

<script type='text/javascript'>
var tekst = new Array("",<?php
$tal = 1;
$links = "";
include ("inc.mysql.phtml");
$hent_oss = mysql_query("SELECT * FROM oss_db ORDER BY id ASC");
$tael_oss = mysql_num_rows($hent_oss);
while ($hent_oss_row = mysql_fetch_array($hent_oss)) {
if ($tal == $tael_oss) {
    echo ("\"$hent_oss_row[spg]\"");
} else {
    echo ("\"$hent_oss_row[spg]\",");
}
$links .= ("<a href=\"#\" OnClick=\"menutekst($tal); return false;\">$hent_oss_row[spg]</a><br>\n");
$tal++;
    }
?>);
function menutekst(x) {
    document.getElementById('menuinfo').innerHTML=tekst[x];
}
</script>


og nede i body har jeg så:
<?php echo "<br>\n$links"; ?>

<div id='menuinfo' style='width:100%'></div>


ved ikke om det hjælper på noget, men det er hvad jeg har og det virker (men kun et felt der kommer frem (spg) og der må meget gerne kunne hives lidt mere ud :)
Avatar billede roenving Novice
26. oktober 2003 - 13:28 #9
Så laver du samme nummer med svarene, som med linkene:

while ($hent_oss_row = mysql_fetch_array($hent_oss)) {
if ($tal == $tael_oss) {
    echo ("\"$hent_oss_row[spg]\"");
$sv .= "\"$hent_oss_row[svar]\"";
} else {
    echo ("\"$hent_oss_row[spg]\",");
$sv .= "\"$hent_oss_row[svar]\",";
}
$links .= ("<a href=\"#\" OnClick=\"menutekst($tal); return false;\">$hent_oss_row[spg]</a><br>\n");
$tal++;
    }
?>);
sv = new Array("",<?php echo "$sv"; ?>
);
function menutekst(x) {
    document.getElementById('menuinfo').innerHTML=tekst[x]+"\n\n"+sv[x];
}
Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 13:41 #10
heh...

Hvis nu man har et svar, som der er alt muligt kode i, og der er mellemrum, og der er linieskift osv...

Så bliver javascript koden jo ødelagt? (det virker i hvert fald ikke)
er det noget man kan komme uden om? (svarene er måske ½ A4 side lange...)
Avatar billede roenving Novice
26. oktober 2003 - 13:48 #11
Så må du erstatte de linjeskift med javascript-linjeskift (\n !-)

-- men det skulle vel heller ikke være det vanskeligste i php ?-)
Avatar billede 4us.dk Nybegynder
26. oktober 2003 - 13:52 #12
Aner det ikke.... leger lige lidt med det så
Avatar billede 4us.dk Nybegynder
27. oktober 2003 - 13:45 #13
Jeg har haft kigget lidt rundt, og tror jeg skal bruge dette:
http://www.html.dk/faq/00040/

det skal bare være i "PHP" udgave...

har i nogen anelse om hvad sådan noget hedder?

Vil meget gerne have dette til at virke helt...
Avatar billede 4us.dk Nybegynder
27. oktober 2003 - 14:21 #14
Jeg har vidst fundet en løsning nu
Avatar billede 4us.dk Nybegynder
27. oktober 2003 - 14:21 #15
Jeg mangler bare lige at svaret ikke skal komme et par linier nede... men det skal komme et andet sted... det kigger jeg lige på
Avatar billede 4us.dk Nybegynder
27. oktober 2003 - 14:30 #16
Det er også fixet nu... nu mangler der så det link som hører til svaret, i en anden tabel, den bliver straks værre ;)
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