[Javascript] table collapse bug in IE6?
Håkan Magnusson
hakan at backbase.com
Sun Mar 28 09:54:07 CST 2004
Note that the style border-spacing ("cellspacing" if defined in the
markup of the table) is not supported by any IE version, so in order to
create a table through the DOM without cellspacing in IE is to
document.createElement('table cellspacing="0"');
This actually works, while it IS ugly. :)
Regards,
H
David Lovering wrote:
> Dear Paul:
>
> You're welcome. Also, I apologize for not mentioning the "border-collapse:
> collapse" attribute fix -- the original code I wrote was intended for a
> browser which was a near-IE lookalike, but that had some missing CSS
> support, including the "border-collapse" thingy. My newest code does in
> fact use the border-collapse option, but I'd forgotten that I'd amended it
> when the other browser project tanked.
>
> On the timing issue -- I think it depends to some extent on where the data
> for the rows is coming from. If it is from a slow database (like DB2,
> Access, MSSQL), or if it done with a slow pointer/row SQL call, you're
> absolutely right -- hiding may be the best way of dealing with this issue.
> On the other hand, if you're working with a speed-optimized database, such
> as MySQL, Postgres/SQL, etc., or you want only up-to-the-second real-time
> data mapping to your screen, then the delete and rebuild row method may work
> better for you. Also, if you're using ASP or .NET stuff inline as part of
> your window build, prepare yourself for a HUGE slowdown, which only gets
> worse as your server(s) get loaded. Anything that requires a computational
> rebuild of thousands of cells will amplify the inherent slownesses (is that
> a word?) of whatever system you pick.
>
> -- Dave Lovering
>
>
> ----- Original Message -----
> From: "Paul Novitski" <paul at dandemutande.org>
> To: "[JavaScript List]" <javascript at LaTech.edu>
> Sent: Saturday, March 27, 2004 11:05 PM
> Subject: Re: [Javascript] table collapse bug in IE6?
>
>
>
>>Dave,
>>
>>At 12:44 PM 3/27/2004, you wrote:
>>...
>>
>>>If you REALLY want to hide the cells, and not merely nuke/rebuild the
>
> rows,
>
>>>I'd suggest building into your routine a number of CSS attribute calls
>
> which
>
>>>set the border width to 0 on each of the affected cells/rows,
>>
>>*Blush!* That works perfectly; I must be overworked & sleep-deprived not
>>to have seen something so obvious. Thanks! You win the kewpie doll.
>>
>>
>>
>>>making sure
>>>that you still preserve one top/bottom border to "join" the rows which
>>>remain undeleted above and below the one you're taking out.
>>
>>I've given the table the CSS style "border-collapse: collapse" so I don't
>>have to worry about doubled border thicknesses between adjacent cells.
>>
>>
>>>Personally, nuking the rows makes sense in another way as well -- every
>>>screen refresh still exercises the "hidden" objects, taking longer than
>>>necessary to paint the window. I've seen an appreciable speed up when I
>>>trash the unwanted rows, rebuilding them only when necessary.
>>
>>In this case, it feels like 6:half-dozen. It appears to take slightly
>>longer to rebuild the display table with selected rows from the hidden
>>table than it does to hide & unhide selected rows, which makes sense
>>(changing visibility being faster than adding branches to the DOM tree).
>>
>>Thanks,
>>Paul
>>
>>
>>_______________________________________________
>>Javascript mailing list
>>Javascript at LaTech.edu
>>https://lists.LaTech.edu/mailman/listinfo/javascript
>>
>>
>
>
>
> _______________________________________________
> Javascript mailing list
> Javascript at LaTech.edu
> https://lists.LaTech.edu/mailman/listinfo/javascript
>
>
More information about the Javascript
mailing list