Avatar billede ellert Nybegynder
09. juni 2003 - 03:21 Der er 5 kommentarer og
1 løsning

DHTML hjælp (Ja, det er en dum titel)

Hej!

1. Undskyld titlen ... Kunne ikke finde på noget bedre her kl 3:15 ...

2. Mit problem:
Jeg har fundet mig en fin DHTML menu, som jeg bruger til indhold af siden istedet.
Det jeg skal bruge hjælp til, er en måde at få "Content" til at forblive åben efter et klik på et link. Altså hvis en bruger klikker på "links" ( henvisende til fx index.php?s=links ) i menuen, så forbliver dhtml-tingen åben, men nu med links...

Håber I forstod!
Og på forhånd tak!

// eLLERT

ps. Jeg går i seng nu, men håber, der er svar i morgen...
Avatar billede ellert Nybegynder
09. juni 2003 - 03:22 #1
Forresten: kig her www.detersmart.dk/exp.txt

Måske skulle jeg ha postet i Javascript Kategorien? What ever...
Avatar billede roenving Novice
09. juni 2003 - 04:23 #2
Hvis jeg har forstået dig ret, vil du trigge, at contents-menuen åbnes, når du har været på serveren og genereret en hel ny side, bla. med et andet indhold i den menu-div ?-)

Det er lidt tricky, fordi menuen først skabes faktisk efter at resten af siden er loadet -- og normalt ville jeg kigge efter en løsning med onload, men den har menu-constructoren overtaget ,-)

Menuen lavede forøvrigt javascript-fejl, fordi den var indstillet til at tage antallet af menuer som en mere end tallet som blev skrevet, dvs. man skal sætte antallet af menuer til det nummer de har ...

Lige nu har du kun en divTopMenu0, så skal antallet sættes til 0 -- efterhånden som du tilføjer skal du så tilføje divTopMenu1, divTopMenu2 osv. og justere tallet til hhv. 1, 2 osv.

Jeg fandt dog en løsning, som kræver at du i dit php-script sætter en bestemt værdi inde i javascript-blokken til 0 eller 1, alt efter om du vil have contenst-menuen til at åbne eller ej !-)

Med vilje har jeg placeret den værdi næsten sidst i javascriptet før </head>, så du kan bruge det til at finde stedet:

//Calls the init function onload if the browser is ok...
function init(){
    newsMenuInit();
    if (openMenu0==1){
        topMenu(0);
    }
}
var openMenu0 = 0 //Hvis denne værdi er 1 vil den første menu åbne efter at menuerne er lavet

if (bw.bw) onload = init;//newsMenuInit;

</script>
</HEAD>
<BODY

-- som det er nu, er der kun to linjer mellem //Calls the ... og </script>

-- skift *ALT* mellem de to linjer ud med det du finder i det ovenstående, og sørg så for, at dit php-script udskifter 0'et efter var openMenu0 = med et 1-tal, når contents-menuen (divTopMenu0) skal åbne ...
Avatar billede ellert Nybegynder
09. juni 2003 - 12:08 #3
Føj, du er smart :)

Jeg klarede det sådden her:
<?php
    if(isset($_GET['c']) && $_GET['c'] != NULL) {
        $c = $_GET['c'];
        print '<SCRIPT> var openMenu0 = 1 </SCRIPT>';
        include_once('content/'.$c.'.php');
    } else {
        include_once('content/news.php');
    }
?>

Mange tak!
Du må hellere lave et svar ...

// eLLERT
Avatar billede roenving Novice
09. juni 2003 - 13:27 #4
Muy bueno '-)
Avatar billede ellert Nybegynder
09. juni 2003 - 15:26 #5
muy bien hedder det ;)
Avatar billede roenving Novice
09. juni 2003 - 15:39 #6
Je ne parle pas francais -- men jeg takker for points ;~}
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