[JS]IE-vriendelijke variant van visibility:collapse op TBODY

Pagina: 1
Acties:

  • BikkelZ
  • Registratie: Januari 2000
  • Laatst online: 24-11 23:24
Ik had een prettig werkend JS wat draaide onder FF, waarbij ik met visibility:collapse heel gracieus tbodies zichtbaar en onzichtbaar maakte. Het voordeel van die methode was dat de breedte van de tabel altijd afhankelijk bleef van de rest van de content, of die nou ingeklapt was of niet.

Het volgende werkt in beiden, maar verspringt steeds qua breedte.

Hoe los ik dit netjes op onder IE?

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
        switch (tbodies[k].id)
        {
            case "vid_"+vraag_id_van:
            {
                try
                {
                    //tbodies[k].style.visibility = "visible";
                    tbodies[k].style.display = "table-row-group";
                }
                catch (e)
                {
                    //tbodies[k].style.visibility = "visible";
                    tbodies[k].style.display = "block";
                }
                backColor = "888888";
                frontColor = "FFFFFF";
                break;
            }
            case "vid_"+vraag_id_naar:
            {
                try
                {
                    //tbodies[k].style.visibility = "visible";
                    tbodies[k].style.display = "table-row-group";
                }
                catch (e)
                {
                    //tbodies[k].style.visibility = "visible";
                    tbodies[k].style.display = "block";
                }
                backColor = "FFFFFF";
                frontColor = "000000";
                break;
            }
            default:
            {
                //tbodies[k].style.visibility = "collapse";
                //tbodies[k].style.visibility = "hidden";
                tbodies[k].style.display = "none";
                backColor = "888888";
                frontColor = "FFFFFF";
            }
        }


visibility:hidden werkte ook in allebei, maar dan heb je lege vlekken er tussen zitten.

[ Voor 5% gewijzigd door BikkelZ op 22-05-2007 09:37 ]

iOS developer


  • BikkelZ
  • Registratie: Januari 2000
  • Laatst online: 24-11 23:24
*kick*

Niemand? :/

iOS developer


  • glashio
  • Registratie: Oktober 2001
  • Laatst online: 30-11 17:18

glashio

C64 > AMIGA > PC

Zelf ben ik hier ook al eens tegenaan gelopen... |:( Dus tijd voor een 2de poging :P

Eerst probeerde ik de stijl line-height op tbody's op 1 pixel te zetten incombinatie met visibility op hidden. Dit resulteerde wel in een collapse effect maar creëerde nog steeds open space ( aanvankelijk op de hoeveelheid rijen ).

Om de table-layout toch te behouden heb ik deze JS oplossing gemaakt.

> Google Certified Searcher
> Make users so committed to Google that it would be painful to leave
> C64 Gospel
> [SjoQ] = SjoQing


  • BikkelZ
  • Registratie: Januari 2000
  • Laatst online: 24-11 23:24
Ik wil je in ieder geval complimenteren met je programmeerstijl, mooie for constructies, netjes de interne functies gebruikt van tables, ook niet bij iedereen bekend :)

Maar volgens mij gaat deze code er van uit dat er maar een TBODY in de table zit of dat je ze allemaal tegelijk wilt closen, en bij mij zitten er meerdere in, maar wat je nou precies doet, met name met die BR en DIV elementen, ontgaat me.

iOS developer