Avatar billede supermand69 Nybegynder
24. juli 2004 - 17:41 Der er 15 kommentarer og
1 løsning

var undefined

jeg prøver at lave et lille debat forum med tråde... men det virker ikke helt?

http://clark.avansis.dk/temp/thread/
Avatar billede roenving Novice
24. juli 2004 - 17:45 #1
Har du prøvet med:

var expand = new array();

-- og evt. med

for(i=0;i<antal expand-ting;i++){
  expand[i] == false;
}
Avatar billede supermand69 Nybegynder
24. juli 2004 - 17:54 #2
jeg har engang posted det her spørgsmål før for ca ½ år siden, men kom til at slette det... jeg kan huske at det også var dig som kom med et svar ;)

nu kan man ikke lukke dem igen?
Avatar billede supermand69 Nybegynder
24. juli 2004 - 17:56 #3
jeg ville egentlig gerne hvis man kunne blive fri for at lave den for løkke.. og så at der i stedet blev oprettet en expand[i] når der blev trykket på dem :)
Avatar billede supermand69 Nybegynder
24. juli 2004 - 22:32 #4
Jeg har fået skidtet til at virke nu :)

Men kan man ikke undlade at lave den for løkke?? Kan man ikke lave noget så man kun sætter expand[i] når man åbner tråden?
Avatar billede roenving Novice
25. juli 2004 - 06:41 #5
Javascript-variable findes kun, når man har lavet dem ...

Til gengæld er javascript meget eftergivende overfor uerklærede variable, men slet ikke, hvis vi snakker om arrays og lignende objekter !-)
Avatar billede supermand69 Nybegynder
25. juli 2004 - 17:26 #6
jeg er ikke helt med??

det er fordi variablerne i mit array er tilfældige tal... eks. 56, 2, 765, 42, ...
Avatar billede supermand69 Nybegynder
25. juli 2004 - 19:16 #7
måske noget i retning af:

<script type="text/javascript">
var expand = new Array();

function thread_expand(thread)
{
    expand[thread] = true;
   
    var img = 'img'+thread;
    var div = 'div'+thread;
    var td = 'td'+thread;
   
    if(expand[thread])
    {
        document.getElementById(img).src = 'gfx/debate_thread_open.gif';
        document.getElementById(div).style.display = '';
        document.getElementById(td).style.backgroundImage = "url('gfx/debate_tree.gif')";
    }
    else
    {
        document.getElementById(img).src = 'gfx/debate_thread_close.gif';
        document.getElementById(div).style.display = 'none';
        document.getElementById(td).style.backgroundImage = '';
    }
    expand[thread] = !expand[thread];
}
</script>
Avatar billede roenving Novice
26. juli 2004 - 00:26 #8
Så skal du jo nok placere erklæringen efter if-sætningen !-)
Avatar billede supermand69 Nybegynder
26. juli 2004 - 01:07 #9
erklæring?? øhm... udspeceficer :p
Avatar billede roenving Novice
26. juli 2004 - 01:11 #10
expand[thread] = true;
Avatar billede supermand69 Nybegynder
26. juli 2004 - 01:13 #11
så skal man trykke 2 gange før den åbner og så kan man ikke lukke dem igen?
Avatar billede roenving Novice
26. juli 2004 - 01:26 #12
Har ikke kigget ind på din side nu, men måske sådan:

<script type="text/javascript">
var expand = new Array();
function initialize(){
  var td = document.getElementById("TD");
  for(i=0;td.length>i;i++){
    if(/^td(.*)$/i.test(td[i].id)){
      expand(td[i].id.replace(/^td(.*)$/i,"$1")) = false;
    }
  }
}
window.onload = initialize;
function thread_expand(thread)
...
Avatar billede supermand69 Nybegynder
26. juli 2004 - 01:31 #13
det ser lidt forvirrende ud?

jeg får en fejl
Avatar billede supermand69 Nybegynder
26. juli 2004 - 01:32 #14
det må da også kunne gøres mere simpelt?! ;)
Avatar billede supermand69 Nybegynder
27. juli 2004 - 19:59 #15
er der ingen som kan hjælpe?? :(
Avatar billede supermand69 Nybegynder
29. juli 2004 - 16:30 #16
lukker
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